
Praktische Übungen, die Ihnen die Verwendung von BeautifulSoup Pickpocket-Webseiten beibringen
Vor kurzem hat ein kleiner Freund immer fragte mich, Python zu verwenden, um Web-Crawling zu tun immer IP blockiert werden, wie zu tun? Heute werden wir über diese Angelegenheit zu nörgeln. Zunächst einmal, um in der Datenerhebung engagieren müssen zwei Tricks zu lernen:HTML-Parsing + Proxy-IP-KombinationDas erste, was du wissen musst, ist, wie man die Lebensmittel auswählt. Es ist so, wie wenn man auf den Lebensmittelmarkt geht, um Lebensmittel zu kaufen. Man muss in der Lage sein, die Lebensmittel auszuwählen (Parsing), aber man muss auch in der Lage sein, die Standbesitzer zu umgehen (Anti-Blocking).
BeautifulSoup Grundlegende Bedienung
Beginnen Sie damit, ein Werkzeug zu laden, wenn Sie gerade dabei sind:
pip install beautifulsoup4 Anfragen
Nennen Sie ein Beispiel für das Erfassen des Preises einer Ware:
Anfragen importieren
von bs4 importieren BeautifulSoup
Denken Sie daran, die ipipgo-Proxies hier zu verwenden
proxies = {
'http': 'http://username:password@gateway.ipipgo.com:9020',
'https': 'http://username:password@gateway.ipipgo.com:9020'
}
resp = requests.get('https://example.com/products', proxies=proxies)
soup = BeautifulSoup(resp.text, 'lxml')
preise = soup.select('.preis-tag')
for price in prices: print(preis.text.strip)
print(preis.text.strip())
Achten Sie auf diese Grube:Viele Websites erkennen User-Agent, denken Sie daran, die Header hinzuzufügen, sonst ist die Verwendung von Proxys nutzlos.
Der richtige Weg zur Eröffnung einer Proxy-IP
Warum den Proxy von ipipgo verwenden? Sehen Sie sich einfach diese Vergleichstabelle an:
| Nehmen Sie | Generalvertreter | ipipgo-Vollmacht |
|---|---|---|
| Website für den elektronischen Geschäftsverkehr | 10 Minuten zum Versiegeln | Stabil für 8 Stunden + |
| soziale Medien | Häufiges CAPTCHA | Captcha-Reduzierung 70% |
| Hochfrequenzerfassung | hohe Häufigkeit der Unterbrechung der Verbindung | Intelligente IP-Rotation |
Und jetzt kommt der Clou.Tipps zur IP-RotationIm Folgenden finden Sie eine Liste der beliebtesten und bekanntesten IP-Adressen der Welt: ipipgo, ipipgo, ipipgo, ipipgo.
Praktischer Leitfaden zur Vermeidung der Grube
Waren Sie schon einmal in einer dieser Situationen?
Beispiel für eine typische Fehlermeldung
VerbindungsFehler: HTTPSConnectionPool...
An dieser Stelle sind drei Dinge zu überprüfen:
1. die Proxy-Adresse nicht falsch geschrieben ist (insbesondere die Port-Nummer)
2. ist das Passwort des Kontos abgelaufen?
3. ob die SSL-Authentifizierung auf der Zielsite aktiviert ist
Hier ist ein Trick für Sie: Fügen Sie in requests.get()verify=Falseim Gesang antwortentimeout=10, die das SSL-Problem des 80% löst.
Die Erfahrung des alten Vogels
Nennen Sie ein paar einfache Orte, an denen Sie Ihren Kopf aufstellen können:
- Verwenden Sie nicht den standardmäßigen html.parser, sondern ändern Sie den lxml-Parser, damit er doppelt so schnell ist!
- Dynamisch geladene Daten mit Selenium und dem mobilen Agenten von ipipgo abfragen
- Regelmäßige Cookie-Löschung, empfohlen alle 50 Anfragen
Häufig gestellte Fragen QA
F: Was soll ich tun, wenn ich immer eine 403-Fehlermeldung erhalte?
A:Drei Punkte zur Fehlersuche: 1) der Request-Header hat keinen User-Agent 2) IP ist markiert 3) die Häufigkeit der Besuche ist zu hoch. Es wird empfohlen, den Wohn-Proxy von ipipgo zu verwenden, da der Verschleierungsgrad höher ist.
F: Was sollte ich tun, wenn die Daten nicht vollständig geladen sind?
A: 80% sind auf dynamisches Rendering gestoßen, mit dieser Kombination: Selenium + Headless Browser + ipipgo's dynamischer IP-Pool.
F: Wie bekomme ich ein gutes Angebot für die Proxys von ipipgo?
A: Neue Benutzer erhalten zunächst eine 3-Tage-Testversion, Batch-Sammlung wählen Enterprise Edition Paket, denken Sie daran, die Promo-Code BS2023 verwenden, um 10% Rabatt zu erhalten.
Ich sage Ihnen, was mir durch den Kopf geht.
Engage in der Datenerhebung ist wie Guerilla-Krieg, nicht erwarten, dass eine Reihe von Konfigurationen auf der ganzen Welt zu gehen. Verschiedene Websites, verschiedene Strategien zu verwenden, ist der Schlüssel zu mehr Anpassungen zu testen. Kürzlich gefunden ipipgoIntelligentes RoutingDie Funktion ist ziemlich dufte, kann automatisch den schnellsten Knoten, die Sammlung Effizienz wird direkt verdoppelt.
Eine letzte Erinnerung: Verwenden Sie kein Chinesisch in Kopfzeilen! Verwenden Sie kein Chinesisch! Verwenden Sie kein Chinesisch! (Es ist wichtig, dies dreimal zu sagen.) Einige Websites erkennen dies und geben vor dem Senden einen Prozentcode an, der zu beachten ist.

