Integrationer · Mellemliggende niveau

Brug af proxy med Selenium WebDriver (Chrome og Firefox)

Konfigurer proxyen før du åbner browseren, og vælg derefter godkendelse understøttet af din browser og Selenium- version. En aktiveret kilde- IP tilladeliste er nyttig til en fast server. Aktuel Selenium udsætter også WebDriver BiDi godkendelseshåndteringer; bekræft proxygodkendelse med din nøjagtige browserkombination. Selenium Wire er arkiveret og er ikke den anbefalede standardopsætning.

2 min læsning 4 sektioner Gennemgået Redaktionsteamet Proxy Cyber

Indsend serverens faktiske udgående offentlige IPv4 i Access, og vent på administratoraktivering. NAT eller VPN kan ændre den adresse, der ses af gatewayen. Adgang uden adgangskode fungerer kun, når indtastningen er bekræftet for den tildelte service. Bekræft lande- og sessionsindstillinger separat; en kilde-IP-tilladelsesliste sender ikke brugernavnparametre. hvidliste

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

Mulighed 2: WebDriver BiDi godkendelse #

Eksemplet bruger Seleniums vedligeholdte WebDriver BiDi API, med enable_bidi og network.add_auth_handler. Test en HTTP proxy udfordring med den installerede browser og driver før du bruger det i et job. Handleren er ikke begrænset til én vært, så brug en isoleret browser session uden uafhængige godkendelse prompter. Hvis proxy godkendelse ikke understøttes i din version kombination, skal du bruge en aktiveret IP tilladeliste.

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 og andre
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

Praktiske regler#

  • Brug et særskilt sessions-id til hver uafhængig arbejdsgang, hvor den tildelte gateway understøtter det. Bekræft de tilladte varigheds- og placeringsparametre i dine forbindelsesoplysninger. En hjemmeenhed kan afbryde forbindelsen før den ønskede varighed; en fastlåst session er ikke en garanti for samme IP i dagevis. For en fast adresse skal du sammenligne med et dedikeret statisk produkt.
  • Anvendelse --headless=new i Chrome; den gamle headless tilstand har et karakteristisk fingeraftryk.
  • Separate sessionsidentifikatorer isolerer routingpræferencer, ikke browserens cookies eller applikationstilstand. Start med et lille antal medarbejdere, mål fejl og trafik, og forøg gradvist inden for de grænser, der er bekræftet for din ordre og destinationen.Et snævert by- eller transportørvalg kan reducere den tilgængelige kapacitet.

Spørgsmål folk stiller#

Hvorfor viser Chrome en proxy login prompt med Selenium?

Brug en aktiveret kilde-IP tilladeliste til en fast server, eller test Seleniums nuværende WebDriver BiDi godkendelseshåndtering med den installerede browser.Stol ikke på en arkiveret Selenium Wire installation til en ny integration.

Din konto er blevet oprettet

Administrer alle dine proxyer fra én konto

Sammenlign netværk, placer ordrer og følg din saldo og supportanmodninger fra ét dashboard Vores team gennemgår betalinger og giver forbindelsesoplysninger efter levering.

Opret konto