
Erstens, warum Selenium Proxy-IP setzen?
Jeder, der automatisierte Tests durchführt, weiß, dass man den Browser manchmal so tun lassen muss, als würde er in verschiedenen Regionen arbeiten. Wenn man zum Beispiel die Ladegeschwindigkeit einer Webseite misst, muss man den gleichzeitigen Zugriff von Nutzern in Peking, Shanghai und Guangzhou simulieren. Wenn Sie zu diesem Zeitpunkt direkt Ihr eigenes Netz verwenden, sind die gemessenen Daten ein Witz.
Um ein reales Beispiel: Im vergangenen Jahr gibt es einen Freund tun E-Commerce, mit Selenium in der Preisüberwachung zu engagieren, sind die Ergebnisse immer die Ziel-Website blockiert IP, und dann änderte sich die dynamische Wohn-IP, mit Selenium in zufälligen Zugriffsintervallen zu engagieren, die Erfolgsquote der Datenerhebung direkt stieg auf 95% oder mehr.
Zweitens lernen Sie von Hand, wie man Agenten in Selenium installiert
Hier zu den Jungs die ganzen zwei häufig verwendeten Programme, denken Sie daran, das richtige zu wählen, je nach ihren geschäftlichen Bedürfnissen:
Einrichten eines Proxys für Chrome (unauthentifizierte Version)
von selenium import webdriver
proxy = "123.123.123.123:8888" Ersetzen Sie hier mit der tatsächlichen Proxy-Adresse, die von ipipgo bereitgestellt wird
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(f'--proxy-server={proxy}')
driver = webdriver.Chrome(options=chrome_options)
Proxy-Einstellungen, die eine Kontoauthentifizierung erfordern (Schwerpunkt hier)
Nehmen Sie die TK-Zeile von ipipgo als Beispiel, das Format ist username:password@IP:port.
from seleniumwire import webdriver Diese Bibliothek muss zusätzlich installiert werden.
proxy_options = {
'proxy': {
https': 'https://user123:pass456@gateway.ipipgo.net:24000', 'no_proxy': 'localhost,127
'no_proxy': 'localhost,127.0.0.1' Diese Adressen werden nicht über den Proxy geleitet
}
}
driver = webdriver.Chrome(seleniumwire_options=proxy_options)
Achten Sie auf Schlaglöcher:Viele Leute setzen auf den Proxy-Protokolltyp. Zum Beispiel muss die TK-Linie von ipipgo das Socks5-Protokoll verwenden, das in das--proxy-server=socks5://IP:portDer Bericht.
C. Leitfaden zur Auswahl von Agenten für verschiedene Geschäftsszenarien
Hier ist eine ganz verständliche Tabelle für Sie:
| Geschäftsart | Empfohlene Agenten | Warum haben Sie ihn gewählt? |
|---|---|---|
| Hochfrequenz-Datenerfassung | Dynamic Residential (Enterprise Edition) | Der IP-Pool ist groß genug, um 1G Traffic für $9 oder so aufzubauen. |
| Test der Langzeitstabilität | Statische IP-Adresse des Wohnsitzes | 35 Euro für ein Monatsabonnement können nicht schaden, und die IP ist festgelegt, so dass Sie das Problem beheben können. |
| Grenzüberschreitende Unternehmenstests | TK-Linie | Benutzen Sie den exklusiven Kanal des Betreibers, die Latenzzeit ist verdammt niedrig |
IV. häufige Überschlagstellen im Feld
Fall 1:Browser lässt sich nach Proxy-Einstellung nicht mehr öffnen
Überprüfen Sie zunächst, ob die Proxy-Adresse nicht falsch eingegeben wurde, insbesondere der Doppelpunkt und die Portnummer. Brüdern, die den ipipgo-Client verwenden, wird empfohlen, ihre ersteErkennung mit einem KlickDie Funktion misst, ob die Vollmacht in Kraft ist oder nicht.
Fall 2:�trong>Plötzlich brechen alle Anfragen ab
Achtzig Prozent der IP ist das Ziel Website zog schwarz. Dieses Mal zu ändern ipipgo dynamische Wohn-IP, ihre IP-Pool automatisch alle 15 Minuten aktualisiert, persönlich getestet als die manuelle Änderung der IP sparen eine Menge Ärger.
V. Private Tipps des alten Fahrers
1. ein IP-Plugin mit automatischer Umschaltung zu Selenium hinzufügen, mit ipipgo API, um einen solchen Tartvorgang zu erreichen:
Einfuhrgesuche
def refresh_proxy().
Die API von ipipgo aufrufen, um eine neue IP zu erhalten.
api_url = "https://api.ipipgo.com/dynamic?token=你的令牌"
new_proxy = requests.get(api_url).json()['proxy']
return new_proxy
2) Wenn Sie verteilte Tests durchführen, denken Sie daran, jedem Selenium-Knoten unterschiedliche Proxys zuzuweisen. ipipgo unterstützt das Filtern von IPs nach Land und Stadt, was sehr nützlich ist.
VI. die QA-Sitzung, nach der Sie unbedingt fragen sollten
Q:Was sollte ich tun, wenn mein Browser nach der Proxy-Einstellung langsam startet?
A: 80% ist ein Proxy-Server Antwort ist langsam, ändern Sie eine ipipgo exklusive statische IP versuchen. Wenn es nicht funktioniert, in den Code hinzufügen--disable-browser-side-navigationdieser Parameter
F: Was ist, wenn ich mehr als einen Agenten gleichzeitig einsetzen muss?
A: Machen Sie sich nicht die Mühe, sondern entscheiden Sie sich direkt für das Enterprise-Edition-Paket von ipipgo. Es unterstützt die Gleichzeitigkeit mehrerer Kanäle und kann bis zu 200 unabhängige Agentensitzungen öffnen, was viel weniger Ärger bedeutet, als wenn Sie selbst herumprobieren.
Q:Was soll ich bei einem plötzlichen IP-Ausfall während der Prüfung tun?
A: Es wird empfohlen, Ihren Testcode mit try-except zu umhüllen und die API von ipipgo aufzurufen, um nach dem Abfangen der Timeout-Ausnahme zu einer neuen IP zu wechseln. Sie können sich für den spezifischen Code auf das Failover-Beispiel auf der offiziellen Website beziehen.
Schließlich möchte ich sagen, eine Sache: nicht nur auf den Preis des Proxy-Service, wie ipipgo, die 1 bis 1 technische Unterstützung bieten kann, ist wirklich zuverlässig. Das letzte Mal, wenn wir brauchen, um Mexiko-Stadt Projekt dringend bestimmte Träger IP, sie zwei Tage, um es zu tun, kann der Service nicht gesagt werden.

