Python & requests | ImportError: No module named util Python和requests | 导入错误:没有名为util的模块

4

我刚在一台新电脑上安装了requests包。当我尝试导入该模块时,出现了这个错误。有什么想法是什么导致了util模块的问题?

Python 2.7.6 (v2.7.6:3a1db0d2747e, Nov 10 2013, 00:42:54) 

[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> import requests

Traceback (most recent call last):

File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/__init__.py", line 58, in <module>
  from . import utils
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/utils.py", line 25, in <module>
  from .compat import parse_http_list as _parse_list_header
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/compat.py", line 7, in <module>
  from .packages import chardet
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/packages/__init__.py", line 3, in <module>
  from . import urllib3
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/packages/urllib3/__init__.py", line 16, in <module>
  from .connectionpool import (
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/packages/urllib3/connectionpool.py", line 36, in <module>
  from .connection import (
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests-2.3.0-py2.7.egg/requests/packages/urllib3/connection.py", line 43, in <module>
  from .util import (
ImportError: No module named util
2个回答

8

在pypi.python.org上,我看到requests的最新版本是2.2.1。

您的列表显示已安装版本为2.3.0,因此很可能您正在使用尚未真正完成的开发版本。

请卸载它:

$ pip uninstall requests

并安装生产质量的版本:

$ pip install requests

如果仍然会影响版本2.3.0,请明确安装2.2.1版本。

$ pip install requests==2.2.1

1
我刚刚尝试了 sudo pip uninstall requests,看起来进展顺利。我尝试安装完全相同的2.2.1版本,但是出现了相同的错误,所以我重新删除了requests并尝试了一下 import requests 的测试,结果还是出现了相同的错误。ImportError: No module named util - shartshooter
@user3195487 这很奇怪。你能用 virtualenv 测试一下吗?这将为这样的测试提供非常干净的环境。 - Jan Vlcinsky
@user3195487 当你执行$ pip freeze|grep requests时,显示的requests版本是哪个? - Jan Vlcinsky
我找到了问题所在。我之前没有使用pip安装requests,所以我必须手动删除它。根据您的建议尝试安装pip,结果非常成功。感谢您的帮助! - shartshooter
@user3195487 很好。学会使用 pip 即使是安装开发包 - 它是非常强大的工具,允许从 pypi、eggs、wheels、本地源目录、git 等方式进行安装... 并且它终于成为了 Python 3.4 的一部分。 - Jan Vlcinsky
显示剩余4条评论

0

如下所示 错误 1459100 我需要执行以下命令:

# mv /usr/lib/python2.7/site-packages/requests /usr/lib/python2.7/site-packages/requests_old

那么

dnf install python-requests --best --allowerasing

终于,我可以重新启动virt-manager了。

我的系统配置: Fedora 25

$ /usr/lib/

python2.7/ python3.5/ 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接