【问题标题】:Problem with python urllibpython urllib的问题
【发布时间】:2010-05-19 19:57:58
【问题描述】:

当我尝试使用 urllib.urlopen 下拉网页时,我遇到了错误。我已经禁用了 Windows 防火墙和我的 AV,所以不是这样。我可以在浏览器中访问这些页面。我什至重新安装了 python 以排除它是一个损坏的 urllib。任何帮助将不胜感激。

>>> import urllib
>>> h = urllib.urlopen("http://www.google.com").read()

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    h = urllib.urlopen("http://www.google.com").read()
  File "C:\Python26\lib\urllib.py", line 86, in urlopen
    return opener.open(url)
  File "C:\Python26\lib\urllib.py", line 205, in open
    return getattr(self, name)(url)
  File "C:\Python26\lib\urllib.py", line 344, in open_http
    h.endheaders()
  File "C:\Python26\lib\httplib.py", line 904, in endheaders
    self._send_output()
  File "C:\Python26\lib\httplib.py", line 776, in _send_output
    self.send(msg)
  File "C:\Python26\lib\httplib.py", line 735, in send
    self.connect()
  File "C:\Python26\lib\httplib.py", line 716, in connect
    self.timeout)
  File "C:\Python26\lib\socket.py", line 514, in create_connection
    raise error, msg
IOError: [Errno socket error] [Errno 10061] No connection could be made because the target machine actively refused it
>>> 

【问题讨论】:

  • 对我有用,可能是你的请求让谷歌超载,他们把你打断了一段时间
  • 我尝试加载的任何网址都不会发生这种情况。
  • 哦,嗯。您的防火墙中没有代理或其他东西,或者奇怪的端口?
  • 好吧,我关闭了我的软件防火墙。而且我的路由器不能阻止它,因为我可以从浏览器访问页面。你说的代理是什么意思?有没有什么地方可以在 pythons 配置中设置代理?
  • 您使用的是 Linux 吗?尝试运行 strace python yourscript.pl 看看你会得到什么。

标签: python urllib


【解决方案1】:

this could be the case:

刚刚发现我设置的问题 通过互联网选​​项代理,即 代理下线了,我的也下线了 蟒蛇壳。

【讨论】:

  • 是的,就是这样。显然 Idle 使用 Internet 选项中的代理设置。非常感谢 Mykhal
【解决方案2】:

urllib 工作正常。

尝试在您的机器上使用 ethereal(或一些类似的网络嗅探器)来确定拒绝是来自您的机器还是来自其他机器。

【讨论】:

  • 它不可能是机器,我的浏览器可以访问我正在尝试的网站。它发生在我尝试的每个网站上,所以它不是一些用户代理问题或类似的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多