ホームページ  >  に質問  >  本文

java - python使用httplib库如何实现请求失败重试机制?

高洛峰高洛峰2765日前414

全員に返信(2)返信します

  • 迷茫

    迷茫2017-04-18 10:00:30

    ありがとう、解決策が見つかりました

    Python クローラーを使用して Web サイトをクロールするためのいくつかのテクニックの概要 - Python - Bole Online http://python.jobbole.com/81997/ 原文はここにあります

    リーリー

    原則として、retries 変数を使用してリトライ回数を格納し、例外が処理されるたびに再帰処理を行い、リトライ回数が未満であると判断された場合はリトライ回数を -1 に設定します。 0 の場合、失敗ログを直接返して出力します

    返事
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:00:30

    自分自身を再帰的に呼び出して retrycount を実行して制限するのが最も直接的な方法です。
    しかし、問題があります:
    相手のアドレスがサービスの再起動など、一時的にのみ失敗する場合。すぐに再試行しても失敗しました。5 回の再試行時間が非常に短かったため、相手のサービスが準備できたときに、5 回再試行したためリクエストが成功しました。

    私が使用するメカニズムは、30 秒、1 分、10 分、30 分、1 時間待って 5 回再試行し、それでも失敗した場合は失敗したものとみなされます。

    もちろん、この使用法は特定のビジネス ロジックに基づいています。ビジネス ニーズが異なれば、リクエストに対する要件も異なります。

    返事
    0
  • キャンセル返事