2

私のPythonアプリケーションは、urllib2モジュールを使用して多くのHTTPリクエストを作成します。このアプリケーションは、待ち時間が短く、パケットのドロップやネットワークのタイムアウトが非常に一般的である可能性がある、非常に信頼性の低いネットワークで使用される可能性があります。urllib2モジュールの一部をオーバーライドして、例外を発生させる前に各リクエストがX回再試行されるようにすることは可能ですか?誰かがこのようなものを見たことがありますか?

urllib2アプリケーション全体を変更せずに、モジュールのラッパーを作成するだけで、これを実現できますか?したがって、このモジュールを使用してリクエストを行うコードは、自動的に再試行機能を使用できるようになります。

ありがとう。

4

2 に答える 2

4

この質問には役立つ回答がいくつかあります:最大回数まで何かを試すためのpythonicな方法はありますか?

于 2010-08-18T20:01:37.113 に答える
0

ライブラリの一部を変更することは決して良い考えではありません。

目的の動作を提供するデータをフェッチするために使用するメソッドの周りにラッパーを書くことができます。これは些細なことです。

たとえば、myurllib2 という独自のモジュールで、urllib2 と同じ名前のメソッドを定義できます。次に、urllib2 を使用するすべての場所でインポートを変更するだけです

于 2010-06-28T08:41:36.447 に答える