如何解决URL错误:<urlopen error [Errno 10060]

问题描述 投票:0回答:5

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

我正在尝试通过 Python 阅读一个网站,一些作者使用

urllib
urllib2
库。为了将站点存储在变量中,我看到了提出的类似方法:

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/")
但也没有成功(它在相同的时间长度后生成相同的错误)。

python urllib urllib2
5个回答
16
投票

错误代码10060表示无法连接到远程对等点。可能是网络问题,也可能是你的设置问题,比如代理设置。

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

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

使用 HTTP 代理 - Python

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

希望有帮助!


6
投票

答(基本是提前!):

错误: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)

1
投票

这是因为代理设置。 我也遇到了同样的问题,在该问题下我无法使用任何从互联网获取数据的模块。 有一些简单的步骤可供遵循:
1.打开控制面板
2.打开互联网选项
3. 在连接选项卡下 打开 LAN 设置
4.进入高级设置并取消标记所有内容删除其中的每个代理。或者您可以取消标记代理服务器中的复选框,这也将执行相同的操作
5. 单击确定保存所有设置
你完成了。 尝试再次运行该程序,它一定可以工作 它至少对我有用


1
投票

我必须在我的数据科学项目中包含 NLTK 的停用词。 Anaconda 说,“无法连接到网络 winError 10060”, 很多答案都谈到了很多关于代理的问题,只需切换你的数据连接设备,我从wi-fi切换到热点,它工作得很好。

一次,你就完成了,

[nltk_data] Downloading package stopwords to
[nltk_data]     C:\Users\gopal\AppData\nltk_data...
[nltk_data]   Unzipping corpora\stopwords.zip.

验证:

print(stop[:10])
['i', 'me', 'my', 'myself', 'we', 'our', 'ours', 'ourselves', 'you', "you're"]

0
投票

最好的选择是将您的笔记本电脑/PC 连接到移动互联网(热点)而不是常规 Wi-Fi。这对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.