【发布时间】:2011-03-23 18:16:20
【问题描述】:
原帖在最后。 我发现这不是特定于 python 的,但 curl/wget/telnet 也不起作用。
我现在有一个部分解决方案:以 root 身份运行所有内容.... 即 sudo ipython 然后运行示例或 sudo wget python.org
嗨,
我对网络/python 完全陌生。我需要从我的笔记本电脑(Mac Os X 10.6.6)访问带有 urllib2 的网页。我这样做:
import urllib2
response = urllib2.urlopen('http://www.python.org/')
我得到的是: urlopen 错误 [Errno 60] 操作超时 (在家里) 或者 urlopen 错误 [Errno 51] 网络无法访问 (在工作中)。
我认为这是防火墙的问题,不幸的是我不知道如何授予对 urllib2 的访问权限。我已经在防火墙设置中允许了 python/ipython/Python 启动器的传入连接,但没有帮助......
我的python是v2.6.1,urllib2 v2.6。
非常感谢!
【问题讨论】:
-
你用的是什么防火墙?你是否支持某种代理?
-
应该是来自 python/pythonw 进程的传出连接,端口 80。了解防火墙会有所帮助。
-
它只是标准的 Mac 应用程序防火墙。我刚刚尝试完全禁用它,但仍然得到相同的结果。我没有在网络设置中设置任何代理...我尝试了 wget 和 curl,但它们也无法连接...不过,我可以使用 ncftp 访问我的 ftp(通常访问互联网没有其他问题)。
-
我还有更多:ping 工作正常。我已经尝试过(来自类似的线程):telnet python.org 80 Trying 2001:888:2000:d::a2... telnet: connect to address 2001:888:2000:d::a2: No route to host尝试 82.94.164.162... 连接到 python.org。我不知道这到底是什么意思,但我会说端口 80 不工作,但有一个工作?我可以打开 80 或设置 urllib2 使用可用的吗?
标签: macos curl urllib2 firewall wget