urllib2 <urlopen error =“”[errno =“”61] =“”connection =“”rejected =“”>

时间:2017-01-12 02:44:31

标签: python connection urllib2

当我使用urllib2时有时会收到类似&#34的错误; urllib2 urlopen错误[Errno 61]连接被拒绝&#34;,我将再次尝试连接。但是,一旦连接出错,它将永远不会成功,直到我重新启动python脚本。 以下代码是连接部分。

    req = urllib2.Request(self.__servAddr, body)
    response = None
    try:
        response = urllib2.urlopen(req, timeout = 15)
        res = response.read()
        res = eval(res)
        print res
        if 200 == res["retcode"]:
            if res["data"]:
                infoReady = 1
                xxxxxx
    except Exception, e:
        print "request error %s" % str(e) 
        if response:
            response.close()

它认为当前连接对下一个连接有影响。我该如何解决?

1 个答案:

答案 0 :(得分:0)

当拒绝连接时,这通常是代理问题。如果您是公司代理人,则可能已被阻止。您可以通过设置以下环境变量来获取它:

import os
os.environ["HTTPS_PROXY"] = "http://username:password@your-corporate-proxy.com:port"

注意:并非所有代理都需要用户名和密码。在这种情况下,可以省略。另外,如果这是您订阅的代理类型,则可以用HTTP_PROXY替换HTTPS_PROXY。