ImportError: No module named requests

Whenever I try to import requests, I get an error saying No module Named requests.

import requests

The error I get:

File "", line 1, in <module>
    import requests
ImportError: No module named requests

25 Answers

Requests is not a built in module (does not come with the default python installation), so you will have to install it:


Use $ sudo pip install requests (or pip3 install requests for python3) if you have pip installed. If pip is installed but not in your path you can use python -m pip install requests (or python3 -m pip install requests for python3)

Alternatively you can also use sudo easy_install -U requests if you have easy_install installed.

Alternatively you can use your systems package manager:

For centos: yum install python-requests For Ubuntu: apt-get install python-requests


Use pip install requests (or pip3 install requests for python3) if you have pip installed and Pip.exe added to the Path Environment Variable. If pip is installed but not in your path you can use python -m pip install requests (or python3 -m pip install requests for python3)

Alternatively from a cmd prompt, use > Patheasy_install.exe requests, where Path is your Python*Scripts folder, if it was installed. (For example: C:Python32Scripts)

If you manually want to add a library to a windows machine, you can download the compressed library, uncompress it, and then place it into the Libsite-packages folder of your python path. (For example: C:Python27Libsite-packages)

From Source (Universal)

For any missing library, the source is usually available at You can download requests here:

On mac osx and windows, after downloading the source zip, uncompress it and from the termiminal/cmd run python install from the uncompressed dir.


It’s not obvious to me which version of Python you are using.

If it’s Python 3, a solution would be sudo pip3 install requests

To install requests module on Debian/Ubuntu for Python2:

$ sudo apt-get install python-requests

And for Python3 the command is:

$ sudo apt-get install python3-requests

This may be a liittle bit too late but this command can be run even when pip path is not set. I am using Python 3.7 running on Windows 10 and this is the command

py -m pip install requests

and you can also replace ‘requests’ with any other uninstalled library

If you are using Ubuntu, there is need to install requests

run this command:

pip install requests

if you face permission denied error, use sudo before command:

sudo pip install requests

On OSX, the command will depend on the flavour of python installation you have.

Python 2.x – Default

sudo pip install requests

Python 3.x

sudo pip3 install requests

Brew users can use reference below,

command to install requests:

python3 -m pip install requests

Homebrew and Python

pip is the package installer for Python and you need the package requests.

In my case requests was already installed, but needed an upgrade. The following command did the trick

$ sudo pip install requests --upgrade

On Windows Open Command Line

pip3 install requests

I had the same issue, so I copied the folder named “requests” from download to “/Library/Python/2.7/site-packages”. Now when you use: import requests, it should work fine.

In the terminal/command-line:

pip install requests 

then use it inside your Python script by:

import requests

or else if you want to use pycharm IDE to install a package:

  1. go to setting from File in menu
  2. next go to Python interpreter
  3. click on pip
  4. search for requests package and install it

Adding Third-party Packages to the Application

Follow this link

step1 : Have a file by named a file named in the root of your project, then add these lines:

from google.appengine.ext import vendor

Add any libraries installed in the “lib” folder.


Step 2: create a directory and name it “lib” under root directory of project.

step 3: use pip install -t lib requests

step 4 : deploy to app engine.

Try sudo apt-get install python-requests.

This worked for me.

For windows just give path as cd and path to the “Scripts” of python and then execute the command easy_install.exe requests.Then try import requests…

The only thing that worked for me:

curl -o
pip install requests

I have had this issue a couple times in the past few months. I haven’t seen a good solution for fedora systems posted, so here’s yet another solution. I’m using RHEL7, and I discovered the following:

If you have urllib3 installed via pip, and requests installed via yum you will have issues, even if you have the correct packages installed. The same will apply if you have urllib3 installed via yum, and requests installed via pip. Here’s what I did to fix the issue:

sudo pip uninstall requests
sudo pip uninstall urllib3
sudo yum remove python-urllib3
sudo yum remove python-requests

(confirm that all those libraries have been removed)

sudo yum install python-urllib3
sudo yum install python-requests

Just be aware that this will only work for systems that are running Fedora, Redhat, or CentOS.

This very question (in the comments to this answer).
This github issue.

I have installed python2.7 and python3.6

Open Command Line to ~/.bash_profile I find that #Setting PATH for Python 3.6 , So I change the path to PATH=”/usr/local/Cellar/python/2.7.13/bin:${PATH}” , (please make sure your python2.7’s path) ,then save. It works for me.

if you want request import on windows:

pip install request

then beautifulsoup4 for:

pip3 install beautifulsoup4

I solved this problem.You can try this method. In this file ‘.bash_profile’, Add codes like alias python=/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

If you are using anaconda as your python package manager, execute the following:

conda install -c anaconda requests

Installing requests through pip didn’t help me.

You must make sure your requests module is not being installed in a more recent version of python.

When using python 3.7, run your python file like:


or enter python interactive mode with:


Yes, this works for me. Run your file like this: python3

Python Common installation issues

These commands are also useful if Homebrew screws up your path on macOS.

python -m pip install requests


python3 -m pip install requests

Multiple versions of Python installed in parallel?

My answer is basically the same as @pi-k. In my case my program worked locally but failed to build on QA servers. (I suspect devops had older versions of the package blocked and my version must have been too out-of-date) I just decided to upgrade everything

$ pip install pip-review
$ pip-review --local --interactive

If you are using anaconda step 1: where python step 2: open anaconda prompt in administrator mode step 3: cd <python path> step 4: install the package in this location

In my case it was showing request Requirement already satisfied . so I use.

sudo pip3 install requests

Leave a Reply

Your email address will not be published. Required fields are marked *