Jibu la Requests linaonekana kuwa bovu nyuma ya proksi? Angalia usaidizi wa Brotli
Accept-Encoding:br iliyonakiliwa inaweza kupita usaidizi wa kidekoda wa mazingira ya Requests yaliyopangishwa.
Linganisha kompyuta mpakato na mchakato uliopangishwa katika tabaka mbili tofauti:
| Tabaka | Swali |
|---|---|
| Content-Encoding | Je, mteja anaweza kufungua baiti za gzip/deflate/Brotli zilizorudishwa? |
| Charset | Baiti zilizofunguliwa zinakuwa maandishi vipi? |
Requests kwa kawaida hushughulikia gzip/deflate; Brotli huhitaji maktaba iliyosakinishwa inayotumika. Accept-Encoding iliyonakiliwa kwa mkono inaweza kutangaza br wakati mazingira haya hayawezi kuifungua. Kuchagua maandishi ya UTF-8 hakufungui Brotli.
Wakati majadiliano yanapowekewa kikomo kwa makusudi:
response = session.get(
url,
proxies={"https": "http://proxy.example:8080"},
headers={"Accept-Encoding": "gzip, deflate"},
timeout=30,
)
response.raise_for_status()Tumia Session iliyopo, URL ya HTTPS na vichwa/uthibitishaji vinavyohitajika. Linganisha Accept-Encoding inayotoka, Content-Encoding inayoingia na usaidizi wa kifurushi kwenye mashine zote mbili; mpatanishi anayebadilisha anaweza pia kutoa metadata iliyopitwa na wakati. Ulinganisho tofauti wa ukurasa wa umma unaweza kutumia Orodha ya proksi za HTTP kwa URL yake ya proksi mahali ambapo wapatanishi wa umma wanaruhusiwa, bila vitambulisho vya proksi vilivyorithiwa, vichwa vya akaunti vilivyonakiliwa au data ya mwili ya faragha.
Vinginevyo pendelea majadiliano ya kawaida ya mteja. Miingiliano rahisi ya content/text ya Requests hufungua usimbaji unaotumika, kwa hivyo usifungue matokeo yao tena kwa sababu tu kichwa kinataja jina lake.