Python 2.7Web ページをダウンロードするスクリプトに取り組んでいます。ほとんどの場合、すべてが計画どおりに進みます。このスクリプトには何千もの Web ページをダウンロードする必要があるため、うまくいかないことが数回発生することは避けられません。スクリプトは aURLErrorまたはの場合にあきらめて続行しHTTPErrorますが、すべてがハングする場合があり、手動でヒットCtrl-ZするかCtrl-C、これを停止する必要があります。問題のコード:
f = urlopen (url)
local_file = open (file_name, 'w') # Open local file
local_file.write (f.read())
local_file.close ()
試してみましたがsignal.alarm、常に機能するとは限りません。urlopen でタイムアウト パラメータを試しましたが、うまくいきません。
特定の秒数が経過すると、スクリプトが自動的にあきらめて続行することを確認する信頼できる方法はありますか? urlopen 以外のものを使用する必要がありますか?