Intégrations · Intermédiaire

Utilisation de proxys avec Selenium WebDriver (Chrome et Firefox)

Configurez le proxy avant d'ouvrir le navigateur, puis choisissez l'authentification prise en charge par votre navigateur et la version de Selenium. Une liste blanche d'IP source activée est utile pour un serveur fixe. Current Selenium expose également les gestionnaires d'authentification WebDriver BiDi ; vérifiez l'authentification du proxy avec votre combinaison exacte de navigateur. Selenium Wire est archivé et ne constitue pas la configuration recommandée par défaut.

2 minutes de lecture 4 volets Vérifié Équipe éditoriale Proxy Cyber

Soumettez l’IPv4 publique sortante réelle du serveur dans Access et attendez l’activation de l’administrateur. NAT ou un VPN peut modifier l'adresse vue par la passerelle. L'accès sans mot de passe ne fonctionne qu'après confirmation de l'entrée pour le service attribué. Confirmez les options de pays et de session séparément ; une liste blanche d'adresse IP source n'envoie pas de paramètres de nom d'utilisateur. liste blanche

Python, Chrome, serveur en liste blanche
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

opts = Options()
opts.add_argument("--proxy-server=http://res.proxy-cyber.com:9000")
opts.add_argument("--headless=new")
driver = webdriver.Chrome(options=opts)
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()

Option 2 : authentification WebDriver BiDi #

L'exemple utilise l'API WebDriver BiDi maintenue par Selenium, avec activate_bidi et network.add_auth_handler. Testez une simulation de proxy HTTP avec le navigateur et le pilote installés avant de l'utiliser dans une tâche. Le gestionnaire n'est pas limité à un seul hôte, utilisez donc une session de navigateur isolée sans invites d'authentification indépendantes. Si l'authentification proxy n'est pas prise en charge dans votre combinaison de versions, utilisez une liste blanche d'adresses IP activée.

Python, WebDriver BiDi
import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.enable_bidi = True
options.add_argument("--proxy-server=" + os.environ["PROXY_SERVER"])

with webdriver.Chrome(options=options) as driver:
    handler = driver.network.add_auth_handler(
        os.environ["PROXY_USER"], os.environ["PROXY_PASSWORD"]
    )
    try:
        driver.get("https://api.ipify.org")
        print(driver.find_element("tag name", "body").text)
    finally:
        driver.network.remove_auth_handler(handler)

Firefox#

Python, Firefox
from selenium import webdriver
from selenium.webdriver.firefox.options import Options

opts = Options()
opts.set_preference("network.proxy.type", 1)
opts.set_preference("network.proxy.http", "res.proxy-cyber.com")
opts.set_preference("network.proxy.http_port", 9000)
opts.set_preference("network.proxy.ssl", "res.proxy-cyber.com")
opts.set_preference("network.proxy.ssl_port", 9000)
opts.set_preference("media.peerconnection.enabled", False)  # no WebRTC leak
driver = webdriver.Firefox(options=opts)  # whitelisted server, no prompt

Règles pratiques#

  • Utilisez un identifiant de session distinct pour chaque flux de travail indépendant, lorsque la passerelle attribuée le prend en charge. Confirmez la durée autorisée et les paramètres de localisation dans les détails de votre connexion. Un appareil résidentiel peut se déconnecter avant la durée demandée ; une session persistante n'est pas une garantie de la même IP pendant des jours. Pour une adresse fixe, comparez un produit statique dédié.
  • Utiliser --headless=new dans Chrome ; l'ancien mode sans tête a une empreinte digitale distinctive.
  • Des identifiants de session distincts isolent les préférences de routage, et non les cookies du navigateur ou l'état de l'application. Commencez avec un petit nombre de travailleurs, mesurez les erreurs et le trafic, et augmentez progressivement dans les limites confirmées pour votre commande et la destination. Une sélection étroite de villes ou de opérateurs peut réduire la capacité disponible.

Les questions que les gens posent#

Pourquoi Chrome affiche-t-il une invite de connexion proxy avec Selenium ?

Utilisez une liste blanche d'adresse IP source activée pour un serveur fixe ou testez le gestionnaire d'authentification WebDriver BiDi actuel de Selenium avec le navigateur installé. Ne comptez pas sur une installation Selenium Wire archivée pour une nouvelle intégration.

Votre compte

Gérez vos proxys dans un seul compte

Comparez les réseaux, passez des commandes et suivez votre solde et vos demandes d'assistance à partir d'un seul tableau de bord. Notre équipe examine les paiements et fournit les détails de connexion après la livraison.

Créer un compte