我正在使用Python 2.7
中的脚本下载网页。大多数时候,一切都会按计划进行。鉴于此脚本有成千上万的网页可供下载,因此不可避免地会有几次无法解决问题。在URLError
或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中尝试了timeout参数,但这不起作用。是否有可靠的方法来确保脚本在特定的秒数后自动放弃并继续运行?我应该使用urlopen以外的其他东西吗?
最佳答案
确保您使用的是urllib2
from urllib2 import urlopen
try:
f = urlopen (url, timeout=10)
except urllib2.URLError:
# try again later
关于python - 如何在Python中获取urlopen命令以放弃并继续前进?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13598165/