Pythonでは、HTTPのやり取りをするための便利なライブラリとしてrequestsがあります。このライブラリを使ってHTTPリクエストを送信し、レスポンスを受け取ることができます。しかし、レスポンスがエラーを含んでいる場合、どのように対処すればよいでしょうか?

raiseとは?

Pythonのraiseは、自分で例外を発生させるためのキーワードです。基本的な使い方は、「raise Exception」のように、Exceptionの後に任意のエラーメッセージを記述する形式となります。

def validate_age(age):
    if age < 0:
        raise ValueError("Age can't be negative")

validate_age(-1)

このコードは、年齢が負の値の場合、ValueErrorを投げます。

HTTPErrorとは?

HTTPErrorは、HTTPリクエストのレスポンスがエラーを含んでいる場合に発生します。具体的には、4xxや5xxのHTTPステータスコードが返された場合に発生します。

import requests

response = requests.get('http://nonexistenturl.com')
response.raise_for_status()

このコードは、存在しないURLに対してGETリクエストを送信し、そのレスポンスがエラーを含んでいる場合(この場合、404エラー)、HTTPErrorを発生させます。

まとめ

PythonのraiseHTTPErrorを理解し、適切に活用することで、HTTPリクエストとレスポンスのエラーハンドリングを効果的に行うことができます。これにより、プログラムの安定性と信頼性を向上させることができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です