2017-10-20 23 views
0

私はpythonを使ってhttpエラーを捕まえていますが、エラーのコード(たとえば、400、403、..)を知りたいと思います。また、私はエラーのメッセージを取得したい。しかし、私はこれらの2つの属性をドキュメントで見つけることはできません。誰も助けることができますか?ありがとうございました。urllib3 Httpエラーのコードとメッセージを見つける方法

try: 
     """some code here""" 
    except urllib3.exceptions.HTTPError as error: 
     """code based on error message and code""" 

答えて

0

なぜ例外としてキャッチしていますか? httpレスポンスを見たいので、例外として扱う必要はありません。

あなたは、単にあなたのHTTPリクエストを作成し、このような応答を読むことができる:詳細は

import urllib3 
http = urllib3.PoolManager() 
req = http.request('GET', 'http://httpbin.org/robots.txt') 
status_code = req.status 
server_response = req.data 

チェックurllib3 readthedocsを。

import urllib3 
from http.client import responses 

http = urllib3.PoolManager() 
request = http.request('GET', 'http://google.com') 

http_status = request.status 
http_status_description = responses[http_status] 

print(http_status) 
print(http_status_description) 

...実行:あなたは、次の例のようにhttp.clientからresponsesを使用することができます「エラーのメッセージを」、言ったときに、HTTPレスポンスの記述を意味すると仮定すると

0

あなたに与えるでしょう:

200 
OK 

私の例です。

私はそれが役に立ちそうです。よろしく。