Modulenotfounderror: no module named scapy
If you’re encountering the ModuleNotFoundError: No module named ‘scapy’, you’ve landed in the right spot. So without further ado let’s dive in! What is the ‘scapy’ module? Scapy is a …
itsourcecode.com hosts 198+ documented fixes for Python ModuleNotFoundError messages — the most common error every Python developer hits, from beginners running their first script to ML engineers wrestling with TensorFlow imports. Whether you see ModuleNotFoundError: No module named 'numpy', 'tensorflow', 'flask', or some obscure dependency, you’ll find the exact fix below organized by ecosystem. Each post shows the error, the root cause, and 2–4 alternative fixes.
A ModuleNotFoundError happens when Python’s import statement can’t find a module on the current Python interpreter’s path. It’s a subclass of ImportError, introduced in Python 3.6. The error message always tells you which module is missing in quotes — for example ModuleNotFoundError: No module named 'pandas'. The fix depends on why Python can’t find it: not installed, installed in a different Python, wrong virtualenv active, typo in the import, or a sub-module that doesn’t exist in the package version you have.
PIL vs pil, OpenCV vs cv2).which python (Mac/Linux) or where python (Windows). Then python --version. If you have multiple Pythons, you may be importing from a different one than where the module is installed.pip install . If that fails, try python -m pip install — this guarantees you’re using the pip that matches your active Python.pip install beautifulsoup4, but import as from bs4 import BeautifulSoup. Install pip install opencv-python, import as import cv2. Install pip install python-dotenv, import as from dotenv import load_dotenv.pip install _ssl, _tkinter, _curses errors usually mean Python was compiled without those modulesThe Python data stack. Most errors here come from sub-module removals between major versions or pip/conda installation mismatches.
ML packages have the most install pain because of GPU/CPU variants, CUDA versions, and rapidly changing internal APIs.
Framework imports usually fail because the framework isn’t installed in the active venv, or you’re importing a sub-package that’s a separate pip install (Flask-CORS, flask_sqlalchemy, etc.).
Database connectors often need system libraries before they can be installed. psycopg2 needs libpq-dev on Linux; mysqlclient needs mysql-dev.
Desktop GUI errors. _tkinter errors usually mean Python was compiled without Tk support — need to rebuild Python or use a different distribution.
Web scraping has more “install name ≠ import name” gotchas than any other ecosystem. bs4 needs beautifulsoup4; webdriver_manager is its own package.
The most painful errors — when Python itself can’t import its own tools. Usually means a broken Python install, missing system dependency, or virtualenv that’s gone bad.
Common helper packages. Most of these have classic install/import name confusion.
These guides were rewritten or expanded in 2026 with current package versions and step-by-step install instructions for Windows, Mac, and Linux.
ModuleNotFoundError is a subclass of ImportError, introduced in Python 3.6. ModuleNotFoundError is raised specifically when the named module can’t be found. ImportError is the broader parent class, also raised when the module IS found but the specific name you tried to import from it doesn’t exist (e.g., from numpy import nonexistent_thing). If you catch ImportError, you’ll also catch ModuleNotFoundError automatically.
You have multiple Python interpreters on your system, and pip is installing to a different one than the one running your script. Check: (1) Run which pip and which python — do their bin paths match? (2) Use python -m pip install instead of bare pip install — this forces pip to use the same Python as the command. (3) Inside a virtualenv, always activate it BEFORE running pip.
Some Python packages have different install names and import names because the original PyPI name was taken or the package was renamed. Common ones:
beautifulsoup4 → import bs4opencv-python → import cv2python-dotenv → import dotenvpython-docx → import docxPillow → import PILPyYAML → import yamlPyJWT → import jwtVS Code uses its own Python interpreter selection that may differ from your shell’s. Click the Python version indicator in the bottom-right status bar of VS Code → select the interpreter that matches the one where your modules are installed (likely your venv’s bin/python or Scripts/python.exe). After switching, reload the window (Cmd/Ctrl+Shift+P → “Reload Window”).
Jupyter has its own kernel selection separate from terminal Python. Two fixes: (1) Install the module with !pip install inside a notebook cell (the ! runs shell). (2) Make sure the notebook kernel points to the right Python. In Jupyter: Kernel → Change kernel. If the venv isn’t listed, register it with python -m ipykernel install --user --name=myenv.
Yes, with a try/except, and it’s a legitimate pattern for optional dependencies:
try:
import optional_module
HAS_OPTIONAL = True
except ModuleNotFoundError:
HAS_OPTIONAL = False
But for required dependencies, NEVER catch silently — let the error fail loudly so you know the install is broken.
These are core Python modules implemented in C, built into the Python binary at compile time. The error means your Python was compiled WITHOUT the required system library (OpenSSL for _ssl, Tk for _tkinter, ncurses for _curses). Fix: install the system library (e.g., brew install tcl-tk, apt install python3-tk) and rebuild Python, OR use a distribution like pyenv with proper build flags, OR install a different Python (Anaconda, official python.org binary).
New posts are added weekly as we hit new errors in real projects. Existing posts are revised every 6–12 months to keep up with package version changes (PyTorch 2.x, TensorFlow 2.16, Pandas 2.x, sklearn 1.x). This page was last refreshed in May 2026.
ModuleNotFoundError is one of 10 hubs in our Python & JavaScript error reference cluster — 980+ documented fixes total. If your error isn’t about a missing module, jump to the right hub below:
This ModuleNotFoundError reference has been curated since 2015 by PIES Information Technology Solutions in Binalbagan, Negros Occidental, Philippines. Every post in the collection started as a real error encountered by us, our clients, or readers who emailed us with their tracebacks. Used by 12,000+ Python developers monthly across the Philippines, India, the United States, and beyond. If your error isn’t here, send the full traceback to our contact form and we’ll add it.
If you’re encountering the ModuleNotFoundError: No module named ‘scapy’, you’ve landed in the right spot. So without further ado let’s dive in! What is the ‘scapy’ module? Scapy is a …
Working on your Windows computer and getting the error message “modulenotfounderror no module named “pip” windows“? Worry no more, as in this article we’ll show you how to solve this …
The modulenotfounderror: no module named ‘ipympl’ is an error in Python that developers may run into in Jupyter Notebook. This error occurs when the module is not found on their …
I know how frustrating it is to encounter errors like modulenotfounderror: no module named ‘ruamel’ while working with a Python project. That’s the reason we’re here, ready to rescue you …
In this post, we will learn the solutions on how to solve the no module named ‘sklearn.externals.six’ What is sklearn.externals.six? The sklearn.externals.six module in the scikit-learn library provides compatibility between …
Finding it difficult to resolve the Python problem modulenotfounderror: no module named psycopg2? Don’t worry; we’ll show you how to fix this mistake in this article. The modulenotfounderror: no module …
Are you looking for the solution to this error: “modulenotfounderror: no module named prettytable“? If yes, then continue to read on because in this article we are going to explain …
In this tutorial, we will learn the solutions to resolve the error no module named keras.objectives. Alternatively, multiple programmers will install these modules (called “Keras”) into a different virtual environment. Running …
Encountering a modulenotfounderror: no module named simple_salesforce error message in Python is normal, especially when you are new working on your project in Python. Luckily, this article provides a comprehensive …
In this article, we will discuss the solutions on how to resolve the modulenotfounderror: no module named worker airflow. What is worker airflow? In Airflow, the “worker” refers to a …
As a developer working with Python, you cannot avoid running into errors like modulenotfounderror: no module named airflow. So, you must know how to fix this kind of issue. In …
Encountering errors like modulenotfounderror: no module named networkx in Python is inevitable. This kind of error usually appears when developers try to import a module that is not found in …
Encountering errors like modulenotfounderror: no module named ‘wget’ in Python is inevitable. This kind of error usually appears when developers try to import a module that is not found in …