Integracije · Srednje zahtevni

Uporaba proxyjev s Playwrightom: en izhod na brskalnik ali kontekst

Playwright vzame proxy ob zagonu ali po kontekstu brskalnika, s poverilnicami, tako da lahko vsak kontekst postane lastna lepljiva seja v svoji državi brez ponovnega zagona brskalnika.

2 min branje 5 oddelkov Pregled Uredniška ekipa Proxy Cyber

Proxy na ravni zagona#

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()

Uporabite ločen identifikator seje za vsak neodvisen potek dela, kjer ga dodeljeni prehod podpira. Potrdite dovoljeno trajanje in parametre lokacije v podrobnostih povezave. Domača naprava lahko prekine povezavo pred zahtevanim trajanjem; lepljiva seja ni zagotovilo za isti IP več dni. Za fiksni naslov primerjajte namenski statični izdelek.

Proxyji po kontekstu#

Če želite v enem brskalniku zagnati več držav ali sej, zaženite z ogrado proxy in vsakemu kontekstu dodelite svoj.Chromium potrebuje proxy na ravni zagona za spoštljive proxyje po kontekstih.

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"})

Ujemanje konteksta z izhodom#

Vsakemu kontekstu dodelite krajevno nastavitev in časovni pas države, tako da se IP, jezik in ura ujemajo: locale=\"de-DE\", timezone_id=\"Europe/Berlin\" Neujemanja so močnejši signal za bot kot IP sam po sebi, zato je treba upoštevati tudi to.

Prihranite gigabajte: blokirajte, kar ne potrebujete#

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

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

Upodobljena stran lahko tehta od 3 do 5 MB, njen HTML in API kliče nekaj sto kilobajtov, na omrežju po GB pa to pravilo zmanjša račun za 80 do 90 %.

Preverjanje in odpravljanje težav#

  • Najprej odprite storitev IP-echo in preverite državo; nato si oglejte iskanje geolokacije za mesto.
  • A net::ERR_TUNNEL_CONNECTION_FAILED ali ERR_PROXY_CONNECTION_FAILED Pri zagonu pomeni, da so poverilnice ali parameter napačni; preizkusite isti URL s cURL-om, da preberete kodo prehoda.
  • WebRTC je privzeto onemogočen v kontekstih Playwright le, če ga blokirate; add --disable-webrtc Style utrjevanje ali blok STUN, ko je zasebnost pomembna.

Vprašanja, ki jih ljudje postavljajo#

Ali ima lahko vsak zavihek drugačen proxy?

Vsak kontekst lahko; zavihki (strani) znotraj konteksta delijo svoj proxy Ustvarite en kontekst na sejo ali državo.

Ali Playwright podpira SOCKS5 proxy-je s preverjanjem pristnosti?

Chromium ne sprejema poverilnic SOCKS5; uporabite HTTP proxy na vratih 9000 z uporabniškim imenom in geslom ali dodajte IP strežnika na seznam dovoljenih in uporabite socks5://res.proxy-cyber.com:9001 brez poverilnic.

Vaš račun |

Upravljajte vse svoje proxyje v enem računu

Primerjajte omrežja, oddajajte naročila in spremljajte svoje stanje ter zahteve za podporo z ene nadzorne plošče.Naša ekipa pregleda plačila in po dostavi zagotovi podrobnosti o povezavi.

Ustvari račun