Python代码给出urllib2错误2

时间:2013-12-23 06:29:45

标签: python urllib2

我一直在尝试运行我的python脚本并使用urllib2从网站上抓取数据。但是,我编写的所有python脚本都会出现同样的错误。 我正在开发一个Windows和Linux双启动。相同的代码在Windows 7上正常工作,但在ubuntu 12.10上工作时出现以下错误。 代码非常基础:

      import urllib2
      response=urllib2.urlopen('http://www.google.com/')
      html=response.read()

这是错误:

     File "resp.py", line 2, in <module>
     response=urllib2.urlopen('http://www.google.com/')
     File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
     return _opener.open(url, data, timeout)
     File "/usr/lib/python2.7/urllib2.py", line 401, in open
     response = self._open(req, data)
     File "/usr/lib/python2.7/urllib2.py", line 419, in _open
     '_open', req)
     File "/usr/lib/python2.7/urllib2.py", line 379, in _call_chain
     result = func(*args)
     File "/usr/lib/python2.7/urllib2.py", line 1211, in http_open
     return self.do_open(httplib.HTTPConnection, req)
     File "/usr/lib/python2.7/urllib2.py", line 1181, in do_open
     raise URLError(err)
     urllib2.URLError: <urlopen error [Errno -2] Name or service not known>

有人可以建议如何解决这个问题吗?我不使用代理服务器,因此可能会被排除在外。

2 个答案:

答案 0 :(得分:0)

请注意错误消息:“名称或服务未知”。

我认为这仅仅是因为您的计算机无法连接到www.google.com(您甚至无法解析www.google.com的IP地址)。尝试ping www.google.com

也许你被一些防火墙挡住了(例如GFW)

答案 1 :(得分:0)

发生异常:

在我的脚本中我也得到了与你提到的相同的错误,我能够通过更改dns服务器ip来解决我的问题。 可能是你的dns服务器ip更改,在linux dns服务器路径是/etc/resolve.conf