bdh*_*har 2 python sockets timeout exception-handling urllib2
我有一个URL列表
我使用以下内容检索其内容:
for url in url_list:
req = urllib2.Request(url)
resp = urllib2.urlopen(req, timeout=5)
resp_page = resp.read()
print resp_page
Run Code Online (Sandbox Code Playgroud)
超时时,程序崩溃.我只想阅读下一个URL,如果有的话socket.timeout: timed out.这该怎么做?
谢谢
虽然已经有答案,但我想指出,这URLlib2可能不是唯一的责任.
正如这里指出的那样(并且它似乎也基于问题描述),异常可能属于socket库.
在这种情况下只需添加另一个except:
import socket
try:
resp = urllib2.urlopen(req, timeout=5)
except urllib2.URLError:
print "Bad URL or timeout"
except socket.timeout:
print "socket timeout"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5200 次 |
| 最近记录: |