Pythonのurllibでレスポンスデータをデコードする方法
Pythonのurllibを使用して取得したHTTPレスポンスデータをデコードする方法は、response.read()で取得したバイトデータを適切なエンコーディングを使用して文字列に変換することです。一般的に、UTF-8エンコーディングを使用することが多いですが、サーバーからのレスポンスに応じて異なるエンコーディングが必要かもしれません。
以下は、Pythonのurllibを使用してGETリクエストを送信し、レスポンスデータをデコードするサンプルコードです。
python
import urllib.request url = "https://example.com/api" try: response = urllib.request.urlopen(url) data = response.read() # レスポンスデータをUTF-8エンコーディングでデコード decoded_data = data.decode('utf-8') print(decoded_data) except urllib.error.HTTPError as e: print(f"HTTPエラーが発生しました: {e.code} - {e.reason}") except urllib.error.URLError as e: print(f"URLErrorが発生しました: {e.reason}") except Exception as e: print(f"予期しないエラーが発生しました: {e}")
このコードでは、response.read()でバイトデータを取得し、decode('utf-8')を使用してUTF-8エンコーディングでデコードしています。デコードエンコーディングは、HTTPレスポンスのContent-Typeヘッダーやサーバーの仕様に依存することがあるため、適切なエンコーディングを使用してデータを解釈してください。サーバーが異なるエンコーディングを使用する場合、それに合わせて変更する必要があります。

ディスカッション
コメント一覧
まだ、コメントがありません