「リクエスト内の URL で最大再試行回数を超えました」エラーに対する解決策
特に大規模なバッチで iTunes App Store からデータをスクレイピングしようとしたときを実行すると、「URL の最大再試行回数を超えました」というエラーが発生する場合があります。この問題は、リクエスト ライブラリのデフォルトの動作により、接続エラーが発生した後の再試行回数が制限されているために発生します。
この問題を解決するには、リクエストの機能を使用してカスタムの再試行動作を実装できます。
import requests from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry # Configure retry settings retry = Retry(connect=3, backoff_factor=0.5) # Create a session and mount the adapter session = requests.Session() adapter = HTTPAdapter(max_retries=retry) session.mount('http://', adapter) session.mount('https://', adapter) # Perform GET request with retry session.get(url)
この設定では、接続エラーが発生した場合にリクエストを 3 回再試行するように指定しています。さらに、「backoff_factor」により、リクエスト クォータの超過を避けるために試行間に遅延が生じます。
urllib3.util.retry.Retry の機能を利用することで、試行回数などの再試行動作のさまざまな側面をカスタマイズできます。タイムアウトとバックオフ戦略。
以上がPython リクエストの「URL の最大再試行回数を超えました」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。