Sentry Answers>Python>

Resolve Python ImportError: No module named ...

Resolve Python ImportError: No module named ...

David Y.

The ProblemJump To Solution

When I run a Python script containing the line import requests, I receive the following error:

Click to Copy
ImportError: No module named requests

I have received similar error messages for other modules. How do I resolve them?

The Solution

Python comes with a large number of built-in modules, such as os, sys, and time, which can be imported into any script without errors. However, many popular modules are developed by third parties and must be installed separately – the requests module is one example. Depending on your system, Python modules can be installed using either Python’s PIP or the system package manager.

macOS/Linux

On macOS and most Linux systems, this command will work:

Click to Copy
pip3 install requests

This will install the module at the user level, or in the current virtual environment if you’re using one. To install the package system-wide, we can use sudo:

Click to Copy
sudo pip3 install requests

On some Linux systems, installing packages with PIP will produce the following error message:

Click to Copy
error: externally-managed-environment

This message will tell you to install Python packages using the system package manager. Depending on your system, this command will look like one of the following:

  • Debian/Ubuntu: sudo apt install python3-requests
  • Fedora: sudo dnf install python-requests
  • Arch: sudo pacman -S python-requests

Python packages in the system repositories will generally have names like python-packagename or python3-packagename. Less common packages may not be available.

Windows

On Windows, we can install Python packages from the command prompt using this command:

Click to Copy
pip3 install requests

If the above command doesn’t work, PIP may not be in the system PATH and will need to be called through Python:

Click to Copy
python3 -m pip install requests
  • Sentry BlogPython Performance Testing: A Comprehensive Guide
  • Sentry BlogLogging in Python: A Developer’s Guide
  • Syntax.fm logo
    Listen to the Syntax Podcast

    Tasty Treats for Web Developers brought to you by Sentry. Web development tips and tricks hosted by Wes Bos and Scott Tolinski

    Listen to Syntax

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.