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

Posted theinvoker

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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'解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Python 'No module named' 错误; “包”不是包

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

anaconda python no module named 'past'的解决方法

Opencv-Python No module named 'cv2.cv2'

问题1-/usr/bin/python: No module named virtualenvwrapper

python No module named找不到自己写的模块 3种情况及解决方法