Integrationer · Mellanliggande nivå

Använda proxy med Selenium WebDriver (Chrome och Firefox)

Konfigurera proxyn innan du öppnar webbläsaren, välj sedan autentisering som stöds av din webbläsare och Selenium- version. En aktiverad tillåtelselista för käll- IP är användbar för en fast server. Aktuell Selenium exponerar också WebDriver BiDi- autentiseringshanterare; verifiera proxyautentisering med exakt din webbläsarkombination. Selenium Wire är arkiverat och är inte den rekommenderade standardinställningen.

2 min lästid 4 sektioner Granskad Redaktionsteamet Proxy Cyber

Skicka serverns faktiska utgående publika IPv4 i Access och vänta på administratörsaktivering. NAT eller VPN kan ändra adressen som visas av gatewayen. Lösenordsfri åtkomst fungerar endast efter att posten har bekräftats för den tilldelade tjänsten. Bekräfta land- och sessionsalternativ separat; en tillåtelselista för käll-IP skickar inte användarnamnsparametrar. vitlista

Python, Chrome, vitlistad server
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()

Alternativ 2: WebDriver BiDi-autentisering #

Exemplet använder Seleniums underhållna WebDriver BiDi API, med enable_bidi och network.add_auth_handler. Testa en HTTP-proxy utmaning med den installerade webbläsaren och drivrutinen innan du använder det i ett jobb. Hanteraren är inte begränsad till en värd, så använd en isolerad webbläsarsession utan orelaterade autentiseringsprompts. Om proxyautentisering stöds inte i din version kombination, använda en aktiverad IP tillåtlista.

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 och andra
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

Praktiska regler för resor#

  • Använd en separat sessionsidentifierare för varje oberoende arbetsflöde, där den tilldelade gatewayen stöder det. Bekräfta tillåtna parametrar för varaktighet och plats i anslutningsinformationen. En bostadsenhet kan kopplas bort före begärd varaktighet; en fast session är inte en garanti för samma IP-adress under flera dagar. För en fast adress jämför med en dedikerad statisk produkt.
  • Användning --headless=new i Chrome; den gamla headless läge har ett distinkt fingeravtryck.
  • Separata sessionsidentifierare isolerar routingpreferenser, inte webbläsarens cookies eller programtillstånd. Börja med ett litet antal arbetare, mäta fel och trafik och öka gradvis inom de gränser som bekräftats för din order och destinationen. Ett smalt val av stad eller transportör kan minska tillgänglig kapacitet.

Frågor som folk ställer#

Varför visar Chrome en proxy-inloggningsprompt med Selenium?

Använd en aktiv käll-IP tillåtelselista för en fast server, eller testa Seleniums nuvarande WebDriver BiDi autentiseringshanterare med den installerade webbläsaren.Lita inte på en arkiverad Selenium Wire installation för en ny integration.

Ditt konto -

Hantera alla dina proxyer på ett konto

Jämför nätverk, placera beställningar och följ ditt saldo och supportbegäranden från en enda kontrollpanel.Vårt team granskar betalningar och ger anslutningsuppgifter efter leverans.

Skapa konto