Зберіть 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 та токени поза спільним виводом трасування.

Схожі статті