当前位置:  开发笔记 > 编程语言 > 正文

如何使用python下载时优雅地超时

如何解决《如何使用python下载时优雅地超时》经验,为你挑选了1个好方法。

我正在下载一个包含以下代码的大量文件:

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中指定下载一个文件可以工作多长时间,如果已经花费了更多时间,请中断并继续前进?



1> Bin Feng..:

尝试:

import socket

socket.setdefaulttimeout(30)

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有