Integrasjoner · Mellomliggende nivå

Bruke proxyer med Playwright: en utgang per nettleser eller per kontekst

Playwright tar proxy ved oppstart eller per nettleser kontekst, med legitimasjon, slik at hver kontekst kan være sin egen klebrig økt i sitt eget land uten å starte nettleseren på nytt.

2 min lesetid 5 seksjoner Gjennomgått Redaksjonsteamet Proxy Cyber

Mellomtjener på oppstartsnivå#

Python
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={
        "server": "http://res.proxy-cyber.com:9000",
        "username": "USER-cc-us-sid-run1-ttl-30m",
        "password": "PASS",
    })
    page = browser.new_page()
    page.goto("https://api.ipify.org")
    print(page.inner_text("body"))
    browser.close()

Bruk en distinkt øktidentifikator for hver uavhengige arbeidsflyt, der den tildelte gatewayen støtter det. Bekreft tillatt varighet og plasseringsparametre i dine forbindelsesdetaljer. En hjemmeenhet kan koble fra før forespurt varighet; en fast økt er ikke en garanti for samme IP i dager. For en fast adresse, sammenlign et dedikert statisk produkt.

Per- kontekst mellomtjenere#

For å kjøre flere land eller økter i én nettleser, start med en plassholder-mellomtjener og gi hver kontekst sin egen.Chromium trenger mellomtjeneren på oppstartsnivå for per-kontekst-mellomtjenester for å bli respektert.

Python
browser = p.chromium.launch(proxy={"server": "http://per-context"})

de = browser.new_context(proxy={"server": "http://res.proxy-cyber.com:9000", "username": "USER-cc-de-city-berlin-sid-de1-ttl-30m", "password": "PASS"})
us = browser.new_context(proxy={"server": "http://res.proxy-cyber.com:9000", "username": "USER-cc-us-state-tx-sid-us1-ttl-30m", "password": "PASS"})

Samsvarer konteksten med utgangen#

Gi hver kontekst den lokale og tidssone for landet, slik at IP, språk og klokke stemmer: locale=\"de-DE\", timezone_id=\"Europe/Berlin\" Mismatch er et sterkere botsignal enn IP-en i seg selv, og kan være en viktig faktor for å identifisere bots.

Spar gigabyte: blokker det du ikke trenger#

Python
def block(route):
    if route.request.resource_type in {"image", "media", "font", "stylesheet"}:
        return route.abort()
    return route.continue_()

page.route("**/*", block)

En gjengitt side kan veie 3 til 5 MB, HTML og API kaller noen hundre kilobytes.På en per-GB nettverk denne ene regelen reduserer regningen med 80 til 90%.

Bekreft og feilsøk#

  • Åpne en IP-echo tjeneste først og sjekk landet; deretter se på en geolocation oppslag for byen.
  • A net::ERR_TUNNEL_CONNECTION_FAILED eller ERR_PROXY_CONNECTION_FAILED Ved oppstart betyr legitimasjon eller en parameter er feil; test den samme URL-en med cURL for å lese gatewaykoden.
  • WebRTC er deaktivert som standard i Playwright kontekster bare hvis du blokkerer det; Legg til --disable-webrtc Stil herding eller blokkere STUN når personvernet er viktig.

Spørsmål folk stiller#

Kan hver fane ha en annen proxy?

Hver kontekst kan; faner (sider) i en kontekst deler sin proxy.Lag én kontekst per økt eller land.

Støtter Playwright SOCKS5 proxy med autentisering?

Chromium godtar ikke SOCKS5 legitimasjon; bruk HTTP-mellomtjeneren på port 9000 med brukernavn og passord, eller hvitliste serverens IP og bruk socks5://res.proxy-cyber.com:9001 uten legitimasjon.

Din konto og passord

Administrer alle proxyene dine fra én konto

Sammenlign nettverk, legg inn bestillinger og følg saldoen din og forespørsler om støtte fra ett dashbord.Vårt team gjennomgår betalinger og gir tilkoblingsdetaljer etter levering.

Opprett konto