Qoqa wonke umphumela ovela ezicelweni ze-urllib3 proxy ezenzeka kanyekanye
Yabelana nge-ProxyManager elungisiwe phakathi kwezintambo zomsebenzi, sebenzisa isiphindaphindi semiphumela somsebenzisi futhi uhlukanise ukugcinwa kwephuli nomkhawulo wokuxhumana.
Ukwakha iphuli labasebenzi akunikezi umfoni amakhasi alandiwe. Gcina futhi usebenzise amanani abuyiswa umsebenzi othunyelwe:
from concurrent.futures import ThreadPoolExecutor
import urllib3
manager = urllib3.ProxyManager(
'http://proxy.example:8080',
maxsize=4,
block=True,
)
def fetch(url):
response = manager.request(
'GET', url, timeout=urllib3.Timeout(connect=5, read=15),
)
return url, response.status, response.data
try:
with ThreadPoolExecutor(max_workers=4) as workers:
results = list(workers.map(fetch, urls))
finally:
manager.clear()Le ngxenye icabanga uhlu olulinganiselwe lwama-URL nosayizi wempendulo ojwayelekile. Ukuze kuhlolwe ama-URL omphakathi avunyelwe ngaphandle kokuqinisekiswa kwe-proxy, umgadli ovela uhlu lwama-proxy e-HTTP angashintsha indawo yokugcina ye-HTTP yesibonelo yomphathi. Wonke umphumela uhlanganisa i-URL yawo ukuze umfoni akwazi ukuxhumanisa isimo nomzimba nesicelo esifanele. map ibuyisela imiphumela ngokulandelana kokufakwayo; ukukhetha okuphambukayo kumsebenzi kukhushulwa lapho lowo mphumela utholakala.
I-ProxyManager elungisiwe inepuli lokuxhumana lezicelo. Ngemodi yempendulo elayishwe ngaphambili eyisisekelo esetshenziswa lapha, i-urllib3 ifunda umzimba futhi ibuyisela ukuxhumana epulini layo. Inguqulo yokusakaza izodinga ukusetshenziswa okucacile nokukhululwa kokuxhumana.
I-maxsize ngokuvamile ilawula ukuxhumana okugciniwe okungasetshenziswa futhi, hhayi umkhawulo oqinile kuso sonke isokhethi evuliwe. I-block=True ishintsha ukuziphatha kwepuli okuhlobene ukuze abafoni balinde ukuxhumana okukhululekile esikhundleni sokuvula okungeziwe ngaphezu komkhawulo walelo phuli.
Inombolo yabasebenzi ilinganisela izingcingo ezenzeka kanyekanye kulesi sibonelo. Uma kunezindawo eziningi, ukuhlelwa kwephuli nomzila osetshenziswa kumathaneli e-HTTPS nakho kubalulekile; ukulungiselelwa kwephuli elilodwa akufanele kuchazwe njengekhwotha yesokhethi yomhlaba wonke kuyo yonke ingcini.