
Ein praktischer Ansatz, um Proxy-IPs in Python-Hosentaschen zu stecken
Der alte Crawler-Treiber weiß, dass die Requests-Bibliothek wie der Schlüssel zum Bagger ist, aber ohne die Proxy-IP-Unterstützung wird er in einer Minute von der Baustellensicherheit (Anti-Crawling-Mechanismus) erwischt werden. Heute wollen wir darüber sprechen, wie man die Proxy-IP von ipipgo in die Hosentaschen von Python steckt.
Einfuhrgesuche
Der richtige Weg zum Öffnen einer Proxy-IP
proxies = {
"http": "http://user:password@gateway.ipipgo.com:9020",
"https": "http://user:password@gateway.ipipgo.com:9020"
}
response = requests.get("https://目标网站", proxies=proxies)
Beobachten Sie diese Stelle.Nutzername und PasswortSie müssen die Authentifizierungsinformationen, die Sie von ipipgo erhalten haben, ändern, und kopieren Sie nicht die Portnummer, da jedes Paket einen anderen Kanal angibt. Beim letzten Mal bin ich in diese Falle getappt, indem ich den Port in das Dokument kopiert habe und eine halbe Stunde lang blind war.
Aufwickeln der Socken5-Vollmacht
Es gibt einige spezielle Szenarien, in denen Sie das Socks5-Protokoll verwenden müssen, und dieses Mal müssen Sie einen kleinen Motor für Requests installieren. Installieren Sie zunächst die Abhängigkeits-Bibliotheken:
pip install requests[socks]
Die Konfigurationsposen sind leicht unterschiedlich:
proxies = {
'http': 'socks5://user:password@gateway.ipipgo.com:9021',
'https': 'socks5://user:password@gateway.ipipgo.com:9021'
}
Hier gibt es einen Fallstrick: Der Socken-Port und der http-Port von ipipgo sind getrennt, lassen Sie sich nicht verwirren. Ich habe 9020 und 9021 schon einmal andersherum verwendet und das Programm blieb stecken wie ein Traktor.
Guerillataktik mit dynamischen IPs
Wenn Sie einen dynamischen Wohn-Proxy verwenden, denken Sie daran, einestochastisches Schaltendes Organs:
zufällig importieren
def get_random_proxy():
proxy_list = [
"http://user:password@gateway2.ipipgo.com:9020", "http://user:password@gateway2.ipipgo.com:9020", "http://user:password@gateway2.ipipgo.com:9020", "http://user:password@gateway2.ipipgo.com:9020
"http://user:password@gateway3.ipipgo.com:9020"
]
return {'http': random.choice(proxy_list), 'https': random.choice(proxy_list)}
response = requests.get(url, proxies=get_random_proxy())
So dass jeder Antrag auf eine Änderung der Rüstung, Anti-Kletter-System wird nicht erkennen Sie. Aber achten Sie auf ipipgo's dynamisches Paket basiert auf Verkehrsabrechnung, nicht rutschen und schreiben eine tote Schleife, um das Paket über zu verwenden.
QA Erste-Hilfe-Kasten
F: Was soll ich tun, wenn ich keine Verbindung zum Agenten herstellen kann?
A: Überprüfen Sie zunächst die dreiteilige Suite: ① Kontopasswort ist fehlerfrei ② Portnummer auf dem entsprechenden Protokoll ③ lokales Netzwerk ist erlaubt, ausgehend
F: Was ist mit einem Schneckentempo?
A: Versuchen Sie, auf die TK-Linie zu schneiden, oder ändern Sie die statische Wohn-IP. Manchmal ist die regionale Knoten nicht richtig ausgewählt wird auch stecken, wie das Klettern der asiatischen Website nicht wählen Sie den europäischen Knoten.
F: Was ist, wenn ich mehrere Crawler gleichzeitig ausführen muss?
A: Bei dem exklusiven statischen Paket von ipipgo wird jedem Crawler eine unabhängige IP zugewiesen, um IP-Pool-Kämpfe zu vermeiden.
ipipgo Paket Auswahlhilfe
| Paket Typ | Anwendbare Szenarien | Preise |
|---|---|---|
| Dynamisches Wohnen (Standard) | Tägliche Datenerfassung | 7,67/GB/Monat |
| Dynamischer Wohnungsbau (Unternehmen) | Anforderungen für hochfrequente Besuche | 9,47 RMB/GB/Monat |
| Statische Häuser | Langfristig angelegte Operationen | 35/IP/Monat |
Neueinsteigern wird empfohlen, zunächst mit der Dynamic Standard Edition zu üben und dann die Enterprise Edition zu wählen, wenn sich das Geschäft entwickelt. IhreAPI-ExtraktionIch habe ein Skript geschrieben, das IPs automatisch erneuert, und es funktioniert ziemlich gut mit crontab.
Die letzte nörgelnden Satz, begegnet komplexen Szenen direkt an den Kundendienst zu 1v1-Programm, als ihre eigenen blinden Faltung, um Zeit zu sparen. Letztes Mal gibt es eine grenzüberschreitende Sammlung braucht, gaben sie die grenzüberschreitende Linie direkt sparen 30% Verkehrskosten.

