python---No module named 'requests'解决办法

requests介绍

requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那我们为什么要用requests而不用urllib2呢?官方文档中是这样说明的:python的标准库urllib2提供了大部分需要的HTTP功能,但是API太逆天了,一个简单的功能就需要一大堆代码。所以requests是比较简单方便的库。

遇到问题

我们在一个需要使用requests的脚本里引用了requests

import requests
1
运行时报错No module named ‘requests’。
使用命令

sudo python printBarcodeSex.py
1
完整报错如下:

[[email protected] script]$ sudo python printBarcodeSex.py
[sudo] password for zzq:
Traceback (most recent call last):
File "printBarcodeSex.py", line 2, in <module>
import requests
ImportError: No module named requests
1
2
3
4
5
6
原因

可能的原因是两种,网上的资料大多只说了没有安装requests的情况,但是还有一种情况是python环境的混乱,就是一台服务器上安装了很多个python的脚本,然后安装的requests只放置到了其中了一个版本的引用库中。

解决方式

首先确认是否安装有requests模块,使用安装命令:

sudo pip install requests
1
输出如下说明已经安装过了requests。

[[email protected] script]$ sudo pip install requests
Requirement already satisfied: requests in /usr/local/python27/lib/python2.7/site-packages
You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the ‘pip install --upgrade pip‘ command.
1
2
3
4
这种情况下我们怀疑应该是多个python版本导致。

这时候可以查看 /usr/bin 系统基本运行目录看看 都有哪些python。

使用命令

ls /usr/bin/
1
发现确实有多个python。

这时候 我们可以分别用不同的版本尝试运行py脚本如下:

sudo python printBarcodeSex.py
sudo python2 printBarcodeSex.py
sudo python2.6 printBarcodeSex.py
sudo python27 printBarcodeSex.py
1
2
3
4
发现python2.6版本是可以成功运行的,说明requests安装在了2.6的引用库中,两种解决方式,一个是把requests库复制到其他版本的引用库中。

第二个比较快捷的方式就是编辑py脚本的头部,加上

#!/usr/bin/python2.6
1
告诉系统使用2.6版本来运行该脚本,运行时直接使用文件名即可。
如下:

printBarcodeSex.py
1
运行成功。

---------------------
作者:张小凡vip
来源:CSDN
原文:https://blog.csdn.net/zzq900503/article/details/80283314
版权声明:本文为博主原创文章,转载请附上博文链接!

python---No module named 'requests'解决办法

原文地址:https://www.cnblogs.com/TheInvoker/p/9893585.html

时间: 2024-10-11 05:03:33

python---No module named 'requests'解决办法的相关文章

Python: ImportRequestsError: No module named &#39;requests&#39;解决方法

运行Python程序时,出现下面错误: import requests  ModuleNotFoundError: No module named 'requests' 原因:没有导入requests库 解决办法: 开始菜单选择运行,输入cmd运行,然后cd命令进入到python安装目录下的Scripts文件中, 然后输入pip install requests,就好了. 或者 打开Python文件的安装目录,进入Scripts文件中,按住Shift键+鼠标右击 如果上面的还是不能解决你的问题,

Python ImportError: No module named &#39;requests&#39;解决方法

前言:最近在学习python,安装了python3.5的环境后,在网上下载了一个python文件运行的时候,提示ImportError: No module named 'requests'(找不到requests模块). requests介绍:requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的:python的标准库urllib2提供了大部分需要的HTTP功能,但是API太逆天了,一

命令行运行python项目文件,报错:ModuleNotFoundError: No module named &#39;xxxx&#39; 解决办法

在pycharm中写好了自动化测试脚本,并能在pycharm中正常运行,由于要考虑到无人值守时能自动执行,执行时就需要脱离pycharm,直接能用命令执行.但是直接用命令执行用例文件:python3 D:\pycode\autotest_framework\case\run_case.py 结果报错,找不到模块 自动化项目的结构如下:用例run_case.py 和工具类utils下的工具 不在同一个文件夹下面.在脚本中需要导入包如: from utils.HTMLTestRunner impor

Linux下yum出现no module named pycurl 解决办法

1.1 no module named pycurl 解决办法 下载curl:http://curl.haxx.se/download/curl-7.21.3.tar.gz tar xzf curl-7.21.3.tar.gz ./configure make make install 下载pycurl:http://pycurl.sourceforge.net/download/pycurl-7.19.0.tar.gz tar xzf pycurl-7.19.0.tar.gz cd pycur

Centos 7 python 编译报错 ImportError: No module named six 解决办法

本地编译Open vSwitch时报错 Traceback (most recent call last):   File "./ovsdb/ovsdb-idlc.in", line 8, in <module>     import ovs.json   File "/root/rpmbuild/BUILD/openvswitch-2.6.0/python/ovs/json.py", line 21, in <module>     imp

No module named yum解决办法

(1)错误提示: [[email protected] ~]# yum -y install kernel-debuginfo-common-2.6.18-238.el5 There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: No module named yum Please install a package whi

py2exe生成exe后,运行exe时提示No module named * 的解决办法

根据 http://www.tuicool.com/articles/7RbU3i ,应该是没有显式地import相关module. 运行exe的时候提示缺什么模块就import什么模块,并在代码里面显示的调用一次 http://www.pceworld.com/view/6937505 1.In the program you are trying to import (eg. in the A.py for A.exe ), specify import statement for _mss

anaconda python no module named &#39;past&#39;的解决方法

如上图所示,错误就是:No module named 'past' 解决办法不是下载'past'包,而是下载'future'包: 我是安装了anaconda集成环境,python的单独环境应该也是同样的,下面以anaconda安装 'future'包为例,命令是" pip install future",如下图: 成功安装即可解决这个问题(? ω ?) anaconda python no module named 'past'的解决方法

MacOS 解决“import requests No module named requests”

系统信息 sw_vers ProductName: Mac OS X ProductVersion: 10.12.2 BuildVersion: 16C67 测试脚本 #内容如下: cat test.py #!/usr/bin/env python import requests baidu_request = requests.get('http://www.baidu.com') print baidu_request.text 报错信息 #执行脚本 python ./test.py #报错