Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 没有为请求命名的模块_Python_Ubuntu - Fatal编程技术网

Python 没有为请求命名的模块

Python 没有为请求命名的模块,python,ubuntu,Python,Ubuntu,我有两台Ubuntu服务器。在服务器A上输入以下内容可以正常工作: Python 2.7.6 (default, Mar 22 2014, 22:59:56) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import requests >>> from requests.packages.urllib3.po

我有两台Ubuntu服务器。在服务器A上输入以下内容可以正常工作:

Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests 
>>> from requests.packages.urllib3.poolmanager import PoolManager
但是服务器B

Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests 
>>> from requests.packages.urllib3.poolmanager import PoolManager
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named packages.urllib3.poolmanager
这是怎么回事

以下是服务器B的路径:

/usr/local/lib/python2.7/dist-packages/greenlet-0.4.5-py2.7-linux-x86_64.egg
/usr/local/lib/python2.7/dist-packages/gevent-1.0.1-py2.7-linux-x86_64.egg
/usr/lib/python2.7/dist-packages
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
问题是服务器B的文件位于此处,因此它应该可以找到它:

/usr/local/lib/python2.7/dist-packages/requests/packages/urllib3

这是python请求中的一个问题,因为所有者没有像前面提到的那样在Pypi和Ubuntu存储库之间进行相同的打包

解决方案:

  • 直接使用
    urllib3

    from urllib3.poolmanager import PoolManager
    
  • 完全删除
    python请求的所有副本
    ,然后使用
    pip
    apt get
    重新安装它,其中包含
    包。urllib3


  • @BhargavRao是使用pip安装的。请确保服务器BIn中的文件夹中没有名为
    requests.py
    的脚本。在服务器B的同一文件夹中,执行
    >>>导入请求>>>请求。\ uuuu路径\uuuu
    并告诉我们您作为output@bigOTHER给出
    ['/usr/lib/python2.7/dist包/请求']
    是否应该是
    /usr/local/lib/python2.7/
    选项2如何从/usr/lib/python2.7/dist-packages/requests中删除该版本?pip uninstall将其从错误的文件夹中删除。如果它是通过apt get安装的,请尝试:
    sudo apt get remove python requests
    ,否则只需删除该文件夹即可。
    from urllib3.poolmanager import PoolManager