Wenn Sie mit Selenium für Web Scraping oder Automatisierung arbeiten, ist die Integration von Proxies ein Muss. Proxys ermöglichen es Ihnen, Verbote, Ratenbeschränkungen und geografische Einschränkungen zu umgehen, was Ihre Aufgaben nahtlos und effizient macht. Die Konfiguration von Proxys in Selenium kann jedoch eine Herausforderung sein, insbesondere wenn Sie mit Authentifizierung arbeiten oder HTTP-Anfragen überwachen müssen. An dieser Stelle kommt Selenium Wire ins Spiel.
Selenium Wire ist eine erweiterte Version von Selenium, die zusätzliche fortgeschrittene Funktionen hinzufügt, indem sie es Ihnen ermöglicht, Proxys zu authentifizieren, HTTP-Anfragen und -Antworten abzufangen und Netzwerkverkehr zu debuggen.
In diesem Handbuch zeigen wir Ihnen, wie Sie Proxys in Selenium einrichten können. selenium-draht
und die webdriver-manager
. Normalerweise müssen Sie die Binärdateien für Web-Treiber von Browsern herunterladen und regelmäßig aktualisieren. Die webdriver-manager vereinfacht diesen Prozess, indem es diese Aufgaben für Sie übernimmt.
Am Ende dieses Blogs werden Sie ein vollständig konfiguriertes Selenium-Setup haben, das auf ProxyScrape Proxies zugeschnitten ist und bereit ist, alle Herausforderungen zu meistern, die auf Sie zukommen. Legen wir los!
Wenn Sie auf das vollständige Skript zugreifen möchten, ohne den gesamten Lehrgang zu durchlaufen, klicken Sie auf diesen Link, um den vollständigen Code zu kopieren.
Bevor wir uns mit dem Einrichten von Proxies in Selenium beschäftigen, sollten Sie sicherstellen, dass die folgenden Tools und Bibliotheken installiert und bereit sind:
Führen Sie den folgenden Befehl aus, um alle Abhängigkeiten zu installieren:
pip install selenium-wire webdriver-manager
Hinweis: Es kann die Fehlermeldung "ModuleNotFoundError: Kein Modul namens blinker._saferef". Dies kann durch ein Downgrade der Blinker-Bibliothek auf Version 1.7.0 behoben werden
Blinker
pip uninstall blinker
pip install blinker==1.7.0
Nachdem die Voraussetzungen erfüllt sind, können wir die Skriptkonfiguration in drei einfache Schritte unterteilen:
Nachdem wir nun die Voraussetzungen behandelt haben, kommen wir nun zum eigentlichen Skript. Diese Schritt-für-Schritt-Anleitung hilft Ihnen bei der Integration von ProxyScrape Wohnsitzvollmachten mit Selenium unter Verwendung von selenium-draht
und webdriver-manager
.
Wir beginnen mit dem Import der erforderlichen Bibliotheken:
re importieren
von seleniumwire import webdriver
von selenium.webdriver.chrome.service importieren Dienst
von selenium.webdriver.chrome.options importieren Optionen
from webdriver_manager.chrome import ChromeDriverManager
Definieren Sie Ihre ProxyScrape Proxy-Details:
proxy_address = "rp.proxyscrape.com:6060"
proxy_benutzername = "ihr_proxy_benutzername"
proxy_password = "ihr_proxy_password"
(proxy_benutzername, proxy_passwort)
mit Ihren aktuellen ProxyScrape Anmeldedaten.Richten Sie den Proxy in Selenium Wire ein:
sw_options = {
'proxy': {
'http': f'http://{proxy_username}:{proxy_password}@{proxy_address}',
'https': f'https://{proxy_username}:{proxy_password}@{proxy_address}',
}
}
Optimieren Sie die Chrome-Einstellungen für eine bessere Leistung:
chrome_options = Optionen()
chrome_options.add_argument("--start-maximiert")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
Einrichten selenium-draht
mit webdriver-manager
:
Dienst = Dienst(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service, seleniumwire_options=sw_options, options=chrome_options)
Navigieren Sie zum Endpunkt ProxyScrape Judge, um Ihren Proxy zu testen:
driver.get('https://ssl-judge2.api.proxyscrape.com/')
Extrahieren und Anzeigen Ihrer Proxy-IP-Adresse mithilfe von Regex:
# Beispiel: Extrahieren der IP aus der Antwort
Antwort = driver.page_source
# Verwendung einer einfachen Regex zum Parsen der Herkunfts-IP
print("Antwort:", response)
print("Ihre IP ist:", re.search("HTTP_X_FORWARDED_FOR = (\d+\.)+\d+", response).group().split("=")[-1])
# Beenden Sie die Browser-Instanz
driver.quit()
HTTP_X_FORWARDED_FOR
und extrahiert die vermittelte IPZusammenfassend lässt sich sagen, dass die Verwendung von ProxyScrape Residential Proxies mit Selenium Wire eine robuste Lösung für alle ist, die fortschrittliche Web Scraping- und Automatisierungsfunktionen mit verbessertem Datenschutz und erhöhter Sicherheit benötigen.
Mit diesem Leitfaden können Sie eine nahtlose Umgebung einrichten, die nicht nur Einschränkungen umgeht, sondern auch einen minimalen Konfigurationsaufwand erfordert. Diese Methode nutzt leistungsstarke Tools wie Selenium Wire und WebDriver Manager, um den Datenverkehr effizient zu verwalten und über Proxys zu leiten, damit Ihre Scraping-Aufgaben effizient und zuverlässig bleiben.
Wenn Sie Hilfe beim Web Scraping benötigen oder Fragen zu unserem Produkt haben, zögern Sie nicht, uns per Live-Chat zu kontaktieren. Sie können auch unserer Discord-Community für Support und Updates beitreten.