使用try...except来对urlopen出错进行控制,通过socket模块的setdefaulttimeout函数来控制超时时间,python3.x示例代码如下:
import urllib.request
import socket
socket.setdefaulttimeout(10) #设置超时时间
#要下载的网页列表
urls = ['http://www.test.com/1.htm',
'http://www.test.com/2.htm',
'http://www.test.com/3.htm',
'http://www.test.com/4.htm',
'http://www.test.com/5.htm',
'http://www.test.com/6.htm']
for url in urls:
try:
html = urllib.request.urlopen(url)
#处理得到的网页
except:
#出错处理