Соберите opener urllib в Python 3 как с прокси-маршрутом, так и с обработчиками протокола, у которых включён уровень отладки:

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 и HTTPSHandler предоставляют параметр трассировки. ProxyHandler задаёт маршрут; это не место для данной настройки отладки протокола. Показанный публичный запрос может использовать неподтверждённый адрес из списка HTTP-прокси, когда публичные посредники разрешены; держите cookie и токены учётной записи вне этого диагностического сравнения.

Базовый вывод отладки http.client печатается в стандартный вывод. Он может показывать отправленные байты запроса и полученные заголовки ответа, что помогает найти запрос аутентификации прокси, отказ в туннеле или последующий ответ назначения.

Используйте контролируемый запрос и держите учётные данные, cookie и токены вне общего вывода трассировки.

Похожие статьи