Përdorimi i cookies dhe një proxy në një hapës të vetëm urllib të Python
Kombinoni ProxyHandler dhe HTTPCookieProcessor në një hapës të vetëm urllib që kërkesat e ndërlidhura përmes proxy të ndajnë kavanozin e cookies të synuar.
Një hapës urllib mund t'i drejtojë kërkesat përmes një proxy dhe të mbajë cookies e sajtit në të njëjtën kohë. Jepini të dy trajtuesit:
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()Shembulli përdor një destinacion të thjeshtë HTTP dhe rrugën e tij të qartë përmes proxy. Për një kontroll të lejuar të një sajti publik pa vërtetim proxy, zgjidhni një kandidat nga lista e proxy-ve HTTP për atë rrugë duke ruajtur kavanozin e cookies të synuar. Ripërdorni opener për kërkesat e mëvonshme të të njëjtit sesion sajti. Përpunuesi i cookies nxjerr cookies të pranueshme të përgjigjes dhe shton ato të zbatueshme në kërkesat pasuese.
Krijimi i një CookieJar të re bosh para çdo thirrjeje e hedh poshtë atë vazhdimësi. Mbani kavanozin pranë sesionit që përfaqëson; përdorni kavanoza të veçantë për llogari ose flukse pune cookies e të cilave duhet të mbeten të ndara.
Një CookieJar bazë e mban gjendjen në memorie. Për këmbëngulje midis ekzekutimeve të programit, zgjidhni një nënklasë të përshtatshme FileCookieJar dhe ruajeni ose ngarkojeni me qëllim.
Nuk ka nevojë të instaloni një opener global për këtë rregullim. Thirrja e metodës open të këtij objekti i mban proxy-n dhe cookies të lidhura me të njëjtin veprim.