当使用Python urllib2时,会出现奇怪的问题

当使用Python urllib2时,会出现奇怪的问题,python,urllib2,Python,Urllib2,我已经做了一百万次了,但是由于某种原因,我在尝试使用urllib2时遇到了一些奇怪的错误。我最近从Ubuntu11.10升级到了12.04 代码: 结果: Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> urlopen('http://www.google.com').read() File "/usr/lib/python2.7/urllib2.py",

我已经做了一百万次了,但是由于某种原因,我在尝试使用urllib2时遇到了一些奇怪的错误。我最近从Ubuntu11.10升级到了12.04

代码:

结果:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    urlopen('http://www.google.com').read()
  File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 400, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 418, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1207, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1146, in do_open
    h = http_class(host, timeout=req.timeout) # will parse host:port
  File "/home/nate/httplib.py", line 362, in __init__
ImportError: No module named appengine.api
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
urlopen('http://www.google.com)。读()
文件“/usr/lib/python2.7/urllib2.py”,第126行,在urlopen中
return\u opener.open(url、数据、超时)
文件“/usr/lib/python2.7/urllib2.py”,第400行,打开
响应=自身打开(请求,数据)
文件“/usr/lib/python2.7/urllib2.py”,第418行,打开
"开放",
文件“/usr/lib/python2.7/urllib2.py”,第378行,在调用链中
结果=func(*args)
文件“/usr/lib/python2.7/urllib2.py”,第1207行,在http\u open中
返回self.do_open(httplib.HTTPConnection,req)
文件“/usr/lib/python2.7/urllib2.py”,第1146行,打开
h=http_类(主机,超时=req.timeout)#将解析主机:端口
文件“/home/nate/httplib.py”,第362行,在__
ImportError:没有名为appengine.api的模块
我在使用urllib时也遇到了类似的错误。你知道是什么导致了这个问题,以及如何解决这个问题吗

文件“/home/nate/httplib.py”,第362行

您的
sys.path
中有一个名为
httplib.py
的文件,该文件正在尝试导入appengine.api

重命名您的
/home/nate/httplib.py
其他名称,因为它隐藏了同名的标准库模块

文件“/home/nate/httplib.py”,第362行

您的
sys.path
中有一个名为
httplib.py
的文件,该文件正在尝试导入appengine.api


重命名您的
/home/nate/httplib.py
其他名称,因为它正在覆盖同名的标准库模块。

看起来您有一个httplib.py正在覆盖标准模块httplib。它正在尝试导入谷歌应用程序引擎相关的库,而这些库并不存在。您需要将httplib.py重命名为其他名称。

看起来您有一个覆盖标准模块httplib的httplib.py。它正在尝试导入谷歌应用程序引擎相关的库,而这些库并不存在。您需要将httplib.py重命名为其他名称。

我强烈建议您查看。它使使用HTTP变得轻而易举


“Python的标准urllib2模块提供了您所需的大部分HTTP功能,但API完全被破坏了。它是为不同的时间和不同的web构建的。它需要大量的工作(甚至方法重写)来执行最简单的任务。”

我强烈建议您看一下。它使使用HTTP变得轻而易举


“Python的标准urllib2模块提供了您所需的大部分HTTP功能,但API完全被破坏了。它是为不同的时间和不同的web构建的。它需要大量的工作(甚至方法重写)来执行最简单的任务。”

它不在PYTHONPATH中。它在当前目录中,是sys.path中的第一个目录。它不在PYTHONPATH中。它在当前目录中,这是sys.path中的第一个目录。我一定会研究这个。谢谢你的建议!虽然这是一个很好的建议,但根本不能回答问题。在我看来,这应该是一个评论。我一定会对此进行调查。谢谢你的建议!虽然这是一个很好的建议,但根本不能回答问题。应该是一个评论。
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    urlopen('http://www.google.com').read()
  File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 400, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 418, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1207, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1146, in do_open
    h = http_class(host, timeout=req.timeout) # will parse host:port
  File "/home/nate/httplib.py", line 362, in __init__
ImportError: No module named appengine.api