我正在循环下载大量文件,其中包含以下代码:
try:
urllib.urlretrieve(url2download, destination_on_local_filesystem)
except KeyboardInterrupt:
break
except:
print "Timed-out or got some other exception: "+url2download
如果连接刚刚启动时服务器在 URL url2download 上超时,则可以正确处理最后一个异常。但有时服务器响应并开始下载,但服务器速度太慢,即使是一个文件也需要几个小时,最终它返回类似以下内容的内容:
Enter username for Clients Only at albrightandomalley.com:
Enter password for in Clients Only at albrightandomalley.com:
并且只是挂在那里(尽管如果通过浏览器下载相同的链接,则不会询问用户名/密码)。
在这种情况下,我的意图是——跳过此文件并转到下一个文件。问题是——如何做到这一点? python中有没有一种方法可以指定下载一个文件需要多长时间,如果已经花费了更多时间,则中断并继续?
Try:
import socket
socket.setdefaulttimeout(30)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)