Spåra urllibs HTTP-utbyte via proxy
Aktivera spårning av urllibs HTTP- och HTTPS-hanterare i Python 3 på samma opener som äger proxy-rutten.
Bygg urllib-openern i Python 3 med både proxy-rutten och de protokollhanterare vars felsökningsnivå är aktiverad:
from urllib.request import (
HTTPHandler, HTTPSHandler, ProxyHandler, build_opener,
)
opener = build_opener(
ProxyHandler({
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
}),
HTTPHandler(debuglevel=1),
HTTPSHandler(debuglevel=1),
)
with opener.open('https://www.example.com/', timeout=10) as response:
print(response.status)
HTTPHandler och HTTPSHandler erbjuder spårningsalternativet. ProxyHandler tillhandahåller rutten; det är inte där den här protokollfelsökningsinställningen hör hemma. Den visade offentliga förfrågan kan använda en overifierad adress från HTTP-proxylistan när offentliga mellanhänder tillåts; håll kakor och kontotoken utanför denna diagnostiska jämförelse.
Den underliggande felsökningsutskriften från http.client skrivs till standardutdata. Den kan visa skickade förfrågningsbytes och mottagna svarshuvuden, vilket hjälper till att hitta en proxy-utmaning, ett tunnelavslag eller ett senare målsvar.
Använd en kontrollerad förfrågan och håll inloggningsuppgifter, kakor och token utanför delad spårningsutdata.