我用urllib2模块在线程中请求一批url(十几个的样子),这个线程每隔十几分钟运行一次。每次初始运行程序时可以顺利请求到URL资源,但十几分钟线程再次请求时就全都出现“HTTPError503:ServiceUnavailable”错误,但此时又可在浏览器中正常打开这些链接,在IDLEShell中以导入模块的方式运行那个函数也没问题,这是什么情况?请求时设置了User-Agent,应该不是被服务器阻止了,我怀疑是不是资源没有释放的原因,但不知怎么解决。还有urllib2.urlopen(...)后使用close()关闭连接。
2 回答
大话西游666
TA贡献1817条经验 获得超14个赞
通常HTTP状态码5开头(例如500503503)的都是服务器错误。为了验证你的程序是否正确,你可以访问一下别的站点,例如baidu。如果说服务器主动拒绝服务,返回400相关的设计才科学。例如是主动封你的这个ip的请求。至于说资源不释放这个猜测,才几十个线程的请求,随随便便就500的服务器,也太脆弱了。
添加回答
举报
0/150
提交
取消