ホームページ > バックエンド開発 > Python チュートリアル > Python のリクエスト モジュールを使用するときにエラーを適切に処理するにはどうすればよいですか?

Python のリクエスト モジュールを使用するときにエラーを適切に処理するにはどうすればよいですか?

DDD
リリース: 2024-11-12 11:54:02
オリジナル
465 人が閲覧しました

How to Handle Errors Gracefully When Using Python's Requests Module?

Python のリクエスト モジュールでエラーをキャッチする

リクエスト モジュールを使用して HTTP リクエストを行う場合、エラーを適切に処理することが重要です。 Try/Except 構造を使用すると、エラーをキャプチャして適切に応答できます。

try/Except の正しい使用法

リクエストをキャッチするために Try/Except を使用した例。ConnectionError正しいですが、限定的です。ネットワーク関連の問題はキャプチャされますが、タイムアウトやリダイレクトが多すぎるなどの他のエラー タイプはカバーされません。

すべての例外をカバー

すべてのリクエストをキャッチするには-関連するエラーの場合は、基本クラスの例外を使用できます。 request.Exceptions.RequestException:

try:
    r = requests.get(url, params={'s': thing})
except requests.exceptions.RequestException as e:
    # Handle the error accordingly
ログイン後にコピー

特定のエラーの処理

または、特定のエラー タイプを個別にキャッチすることもできます:

try:
    r = requests.get(url, params={'s': thing})
except requests.exceptions.Timeout:
    # Retry or continue in a retry loop
except requests.exceptions.TooManyRedirects:
    # Prompt the user to correct the URL
except requests.exceptions.RequestException as e:
    # Handle catastrophic errors
ログイン後にコピー

HTTP のキャッチエラー

HTTP エラー コード (401 Unauthorized など) の例外を発生させたい場合は、リクエストを行った後に Response.raise_for_status() を呼び出します。

try:
    r = requests.get('http://www.google.com/nothere')
    r.raise_for_status()
except requests.exceptions.HTTPError as err:
    # Handle the HTTP error
ログイン後にコピー

適切なメソッドを実装することで、エラー処理により、スクリプト/プログラムが HTTP リクエスト中に発生したさまざまなエラーに効果的に応答できるようになります。

以上がPython のリクエスト モジュールを使用するときにエラーを適切に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート