Egy urllib-megnyitó képes kéréseket proxyn keresztül irányítani, és közben a webhely sütijeit is kezelni. Adja meg neki mindkét kezelőt:

from http.cookiejar import CookieJar
from urllib.request import (
    HTTPCookieProcessor, ProxyHandler, build_opener,
)

cookies = CookieJar()
opener = build_opener(
    ProxyHandler({"http": "http://proxy.example:8080"}),
    HTTPCookieProcessor(cookies),
)
with opener.open("http://www.example.com/", timeout=10) as response:
    body = response.read()

A példa egyszerű HTTP-célt és annak kifejezett proxyútvonalát használja. Proxyhitelesítés nélküli engedélyezett nyilvános webhely-ellenőrzéshez válasszon jelöltet az HTTP-proxylistáról ehhez az útvonalhoz, megtartva a szándékolt sütitarolyt. Használja újra az openert ugyanazon webhely-munkamenet későbbi kéréseihez. A sütikezelő kinyeri az elfogadható válaszsütiket, és hozzáadja az alkalmazhatókat a következő kérésekhez.

Új üres CookieJar létrehozása minden hívás előtt eldobja ezt a folytonosságot. Tartsa a tarolyt az általa képviselt munkamenet mellett; használjon külön tarolyt azokhoz a fiókokhoz vagy munkafolyamatokhoz, amelyek sütijeit külön kell tartani.

Az alap CookieJar a memóriában tartja az állapotot. A programfutások közötti megőrzéshez válasszon megfelelő FileCookieJar-alesetet, és tudatosan mentse vagy töltse be.

Ehhez az elrendezéshez nem kell globális openert telepíteni. Az objektum open metódusának hívása a proxyt és a sütiket ugyanahhoz a művelethez köti.

Kapcsolódó cikkek