Python 3의 urllib opener를 프록시 경로와 디버그 수준이 켜진 프로토콜 핸들러 모두와 함께 구성합니다:

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 프록시 목록의 검증되지 않은 주소를 사용할 수 있습니다. 쿠키와 계정 토큰은 이 진단 비교에서 제외하십시오.

바탕이 되는 http.client 디버그 출력은 표준 출력으로 인쇄됩니다. 전송한 요청 바이트와 수신한 응답 헤더를 보여 줄 수 있어 프록시 인증 요구, 터널 거부 또는 이후 목적지 응답을 찾는 데 도움이 됩니다.

통제된 요청을 사용하고 자격 증명, 쿠키, 토큰을 공유 추적 출력에 남기지 마십시오.

관련 글