Python:URLError:<urlopen 错误 \[Errno 10060\]

新手上路,请多包涵

操作系统:Windows 7; Python 2.7.3 使用 Python GUI Shell

我正在尝试通过 Python 阅读网站,一些作者使用了 urlliburllib2 库。为了将站点存储在变量中,我看到了一种类似的方法:

 import urllib
import urllib2
g = "http://www.google.com/"
read = urllib2.urlopen(g)

最后一行在 120 多秒后生成错误:

 > Traceback (most recent call last):   File "<pyshell#27>", line 1, in
> <module>
>     r = urllib2.urlopen(o)   File "C:\Python27\lib\urllib2.py", line 126, in urlopen
>     return _opener.open(url, data, timeout)   File "C:\Python27\lib\urllib2.py", line 400, in open
>     response = self._open(req, data)   File "C:\Python27\lib\urllib2.py", line 418, in _open
>     '_open', req)   File "C:\Python27\lib\urllib2.py", line 378, in _call_chain
>     result = func(*args)   File "C:\Python27\lib\urllib2.py", line 1207, in http_open
>     return self.do_open(httplib.HTTPConnection, req)   File "C:\Python27\lib\urllib2.py", line 1177, in do_open
>     raise URLError(err) URLError: <urlopen error [Errno 10060] A connection attempt failed because the connected party did not properly
> respond after a period of time, or established connection failed
> because connected host has failed to respond>

我尝试绕过 g 变量并尝试 urlopen("http://www.google.com/") 也没有成功(它在相同的时间长度后生成相同的错误)。

原文由 Question3CPO 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 835
3 个回答

错误代码 10060 表示它无法连接到远程对等点。这可能是因为网络问题或主要是您的设置问题,例如代理设置。

您可以尝试将同一主机与其他工具(例如 ncat)和/或与同一本地网络中的另一台 PC 连接,以找出问题发生的位置。

对于代理问题,这里有一些材料:

使用 HTTP 代理 - Python

为什么我不能让 Python 的 urlopen() 方法在 Windows 上运行?

希望能帮助到你!

原文由 Sheng 发布,翻译遵循 CC BY-SA 3.0 许可协议

回答(基本就是提前!):

错误:10060 添加超时参数请求解决了我的问题。

示例 1

 import urllib
import urllib2
g = "http://www.google.com/"
read = urllib2.urlopen(g, timeout=20)

示例 2

我在进行 GET 请求时也发生了类似的错误。同样,传递 timeout 参数解决了 10060 错误。

 response = requests.get(param_url, timeout=20)

原文由 DataFramed 发布,翻译遵循 CC BY-SA 4.0 许可协议

新手上路,请多包涵

我原本使用python idle爬取wiki发生urlopen error [WinError 10060] ,之后我尝试使用jupyter,可以正常运行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题