Seachain athruithe domhanda ar opener urllib i seiceálaithe proxy
Coinnigh tástálacha proxy urllib aitiúil dá n-opener féin in ionad ródú agus teorainneacha ama réamhshocraithe an phróisis iomláin a athsholáthar.
from urllib.request import ProxyHandler, build_opener
def make_proxy_opener(proxy_uri):
return build_opener(ProxyHandler({
"http": proxy_uri,
"https": proxy_uri,
}))
opener = make_proxy_opener("http://proxy.example.net:8080")
# Use opener.open(destination, timeout=10) for this route.Glaoigh ar mhodh open féin an opener seo nuair a bhaineann bealach leis an tástáil. Féadfaidh deireadhphointe HTTP an sampla teacht ó do sheirbhís nó ón liosta proxy HTTP le haghaidh tástálacha poiblí. Léiríonn an sliocht úinéireacht; ní shainmhíníonn sé an pholasaí iomlán fíordheimhniúcháin ná sláinte. Coinnigh aon láimhseálaithe a bhaineann go sonrach le cuntas ceangailte leis an gcliant beartaithe sin.
Athraíonn urllib.request.install_opener() an réamhshocrú próisis-iomláin a úsáideann glaonna urlopen() níos déanaí ag leibhéal an mhodúil. Mar sin féin féadann seiceálaí a théann trí proxies iarratais neamhghaolmhara a fhágáil ag úsáid a dheireadhphointe deiridh. Ligeann suiteáil shealadach agus athchóiriú le linn glanta d'iarratais chomhthreomhara fós rith le linn an athraithe chomhroinnte.
Athraíonn socket.setdefaulttimeout() na réamhshocruithe ar an gcaoi chéanna do shocóidí a chruthaítear níos déanaí. Úsáid an teorainn ama ag leibhéal na hoibríochta nuair nach mór don tástáil amháin é a fháil.
Dún freagraí na tástála agus coinnigh a dtorthaí sainiúil: ní hé freagra earráide HTTP go huathoibríoch éisteoir proxy marbh. Má úsáidtear tástáil urllib shioncronach i seirbhís asincrónach, bog an obair bhacála chuig oibrí cuí; ní dhéanann an cinneadh feidhmiúcháin sin athrú domhanda an opener a leithlisiú.
Ba cheart do thástáil a breathnóireacht a thabhairt ar ais gan polasaí líonra eile a fhágáil ina diaidh. Déanann a réad cliant féin agus a hoibríocht theoranta an teorainn sin a dhéanamh soiléir.