导入错误:没有名为请求模块 - Python的
问题描述:
我得到一个错误信息,当我运行的代码导入错误:没有名为请求模块 - Python的
import requests
在这里,下面一行是错误消息
Traceback (most recent call last):
File "C:\Python27\test", line 1, in <module>
import requests
ImportError: No module named requests
基于我所看到的从其他帖子来看,问题的常见原因是个人下载请求模块但尚未安装它。我下载了压缩包,解压缩并通过计算机命令行安装setup.py文件。 Python27/Lib/site-packages文件夹中有一个requests-2.4.0-py2.7.egg文件夹。
答
您可能实际上缺少certifi
模块。
概述: 从您的错误堆栈跟踪看来,您使用的是Windows平台,并具有本机窗口Python安装。所以我会在这里坚持使用Windows说明。但是由于我有基于Cygwin的python安装,我将在这里提供基于cygwin的步骤来解决您的问题。
但是,通过安装pip
或easy_install
,预构建的二进制文件或源代码,您也可以非常方便地在Windows命令提示符下使用这些步骤。
Windows的Cygwin的-PIP方式:
- 添加承载蟒蛇可执行到环境的PATH变量中的目录。说明here
- 获取点可轻松安装新的Python包。最好的方法是在cygwin的主目录中下载get-pip.py,并在cygwin bash shell命令提示符下运行
python get-pip.py
。详细和替代指令here - 在cygwin bash shell中运行
pip install requests
。它将安装requests
和certifi
程序包,其结果为/ lib/site-packages文件夹中的results
,requests-2.4.0.dist-info
,certifi
和certifi-14.05.14-py2.7.egg-info
。 - 运行python并执行您的原始代码行
import requests
。它将运行没有错误。
替代方法来安装新的软件包: 有下载此requests
包的其他几个备选方案,或与此有关的任何新的Python包。这些包括:
- 在Cygwin中获取
easy_install
并运行easy_install requests
。通过安装setuptools
包或按照说明here获取cygwin中的easy_install
。 - 下载预建二进制文件here。并将其作为可执行文件运行它会自动安装在windows注册表中最新的python安装下。
- 下载源代码
requests
从GitHub到主目录和运行python setup.py install
Python的要求安装文件: 还有就是对原来的蟒蛇,要求项目安装requests
提供方式的简要列表网站也是如此。见here。
答
对于一个更高效的环境,节省大量的头痛,请按照下列步骤操作:
- 安装的virtualenv
- 安装virtualenvwrapper
- 始终以virtualenvwrapper
- 始终使用画中画安装依赖管理环境在您的虚拟环境中
- 使用'pip freeze --local'查看安装的内容或生成requirements.txt文件(pip freeze --local>要求.txt)
如果你不知道我在说什么,你应该花一些时间阅读这些东西,你会发现使python如此好工作的许多事情之一(好吧,其他编程语言有类似的工具)
一个可能的原因可能是您的计算机上安装了多个Python。也许检查你是否试图导入请求的Python与你的环境变量中指定的Python是相同的Python ... – 2014-09-04 21:07:08
听起来你是按照正确的步骤,但是你的PYTHONPATH中的文件夹呢? – 2014-09-04 21:10:38
我没有看到任何其他的Python安装。我不明白你在PYTHONPATH中的文件夹是什么意思。 Python27文件夹中有一个“requests”文件夹。 Python27 \ Lib \ site-packages文件夹中还有一个“requests-2.4.0-py2.7.egg-info”文件夹。 – 2014-09-04 21:30:08