python 3 urllibはのためのデバッグ出力をオンにします
-
16-09-2019 - |
質問
は、Python 2では、それが実行してurllibはからデバッグ出力を取得することが可能であった。
import httplib
import urllib
httplib.HTTPConnection.debuglevel = 1
response = urllib.urlopen('http://example.com').read()
しかし、パイソン3でそれが移動されている次のようになります。
http.client.HTTPConnection.set_debuglevel(level)
しかし、私は直接http.clientないurllibはを使用しています。私のhttpリクエストの表示はこのようにデバッグ情報をするようにどのように私はそれを設定することができますか?
ここで何をこれまで使用してI "メートルです。私はデバッグ情報を取得できるようにしたい場合は続行するための最良の方法は何ですか?
#Request Login page
cookiejar = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookiejar))
request = urllib.request.Request(options.uri)
add_std_headers(request)
response = opener.open(request)
response_string = response.read().decode("utf8")
# ...
解決
あなたは右のは初めてでした。あなたは、単にHTTPデバッグアプリケーション全体をオンにするために、あなたのファイルの先頭に行http.client.HTTPConnection.debuglevel = 1
を追加することができます。 urllib.request
はまだhttp.client
を使用します。
そこ(urllib.request.HTTPHandler(debuglevel=1)
を作成し、それにオープナーを構築することにより)、単一のハンドラのデバッグレベルを設定する方法もありますが、のpython3(3.0b3)の私のインストール時に、それが実際に実装されていないようです。私はそれがより多くの最近のバージョンで変更されています想像してみてください。
所属していません StackOverflow