8

データベース サービスへの http 要求の大きなループを実行しています。すべて正常に動作しますが、実行するたびに、(一見ランダムな) 数のクエリが成功した後、次のエラーが表示されます: urllib2.URLError: <urlopen error [Errno 1] _ssl.c:504: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure>.

私はpython、urllib2を使用してリクエストを送信し、urllibを使用してURLにいくつかのものをエンコードしています。それだけです。私が言ったように、それは完全にランダムに見えます。実行したところ、6回のリクエストで失敗しました。前回は、49 回の試行でクラッシュしました。誰かが以前にこの問題を抱えていましたか?

ありがとう

4

3 に答える 3

0

ネットワークに関係がありますが、コードには関係ありません。

モジュール内で再試行して requests モジュールを使用できることをお勧めします。

または、コードに再試行を追加することもできます。

たとえば、次のように記述できます。

for i in range(reties):
    try:
       resp = xx.get(url)
       result = resp.get_result
    except (ConnectionError, SocketError or whatever else):
       pass
else:
    arise Exception('Retry Error')
于 2014-11-26T09:20:55.053 に答える
-1

真剣に、コアパッケージに制限されていない場合は、代わりにPython リクエストを試す必要があります。urllib2

于 2013-12-20T14:33:44.170 に答える
-1

Stan Scrapy の方が高速で、あらゆる種類の接続エラーに対処できると思います。

エリックスクレイピーをチェックすることをお勧めします。その速度と機能に驚かれることでしょう。

シュロミー

于 2014-11-03T10:40:56.217 に答える