Pythonの標準ライブラリであるurllib
を使用してHTTPステータスコードを取得する方法について説明します。
urllibを使用したHTTPステータスコードの取得
Pythonのurllib.request
モジュールを使用してURLを開き、そのレスポンスからHTTPステータスコードを取得することができます。以下にそのコードを示します。
import urllib.request
with urllib.request.urlopen('http://example.com') as response:
status_code = response.getcode()
print(status_code)
このコードは指定したURL(http://example.com
)を開き、そのレスポンスオブジェクトからgetcode()
メソッドを使用してHTTPステータスコードを取得します。
エラーハンドリング
上記のコードは正常なレスポンスを前提としていますが、実際には様々なエラーが発生する可能性があります。例えば、URLが存在しない場合、サーバーがダウンしている場合などです。そのような場合には適切なエラーハンドリングが必要です。
import urllib.request
import urllib.error
try:
with urllib.request.urlopen('http://example.com') as response:
status_code = response.getcode()
print(status_code)
except urllib.error.HTTPError as e:
print(f'HTTPError: {e.code}')
except urllib.error.URLError as e:
print(f'URLError: {e.reason}')
このコードではtry/except
ブロックを使用してエラーを捕捉し、エラーが発生した場合にはその詳細を表示します。
以上がPythonのurllib
を使用してHTTPステータスコードを取得する基本的な方法です。これを応用することで、より複雑なWebスクレイピングやAPIの呼び出し等を行うことができます。