Available now.txt

IPYNB requirements.txt

Scan imports and !pip install lines, deduplicate them, and download a clean requirements.txt with the right PyPI names so a colleague can pip install in one shot.

Free, instant, and 100% private — your notebook never leaves the browser.

How it works

Three steps from upload to download

1

Drop your notebook

Drag a .ipynb onto the card or browse your files. You never create an account.

2

Choose the export

Select Word, PDF, Markdown, HTML, LaTeX, ZIP, Python tools, viewer, cleaner, merger, or splitter—whatever matches your reviewer.

3

Download and ship

Grab the finished file immediately. Open it locally, attach it to email, or upload it to your LMS.

Also available

Try our other free tools

requirements.txt extractor: turn a Jupyter notebook into pip dependencies in seconds

This requirements.txt extractor reads a .ipynb file, scans every code cell for imports and shell-magic install lines, and writes a clean requirements.txt you can hand to pip install -r. Drop the notebook in the browser and the file appears below; nothing leaves your machine. The tool covers the boring case people actually hit: someone shared a notebook, you want to run it locally, and you do not have time to read all the imports by hand.

Pure Python parsers tend to miss a few things. The extractor handles `import x`, `import a, b`, `import a as b`, `from x.y import z`, and shell magics like `!pip install pandas`, `%pip install requests==2.31`, and `!conda install -y numpy`. Standard-library modules drop out so you do not pin `os` or `json` by mistake. The well-known import-name aliases—`cv2 → opencv-python`, `sklearn → scikit-learn`, `PIL → Pillow`, `bs4 → beautifulsoup4`, `yaml → PyYAML`, `dotenv → python-dotenv`—map to their real PyPI names so `pip install -r` actually works.

Compared to running pipreqs locally, this page is faster when you only have one notebook to inspect, when the project is not on disk yet, or when you want to share a starter requirements.txt with a teammate before you create a virtual environment. It is also a useful sanity check after pipreqs: drop the same notebook here, eyeball the list, and adjust pins before you push.

The defaults give you a list pinned only where the notebook itself pinned things (via `!pip install pandas==2.2.1`). Turn off Map import names if you would rather see the raw module names. Turn off Sort to keep the order in which the imports appear. Turn off Header to skip the comment block at the top when you want a strict, machine-readable file.

What this requirements.txt extractor catches

Reads imports, magics, and pinned installs

Detects top-level `import` and `from … import` statements as well as `!pip install`, `%pip install`, `!conda install`, and `!mamba install` lines. Pinned versions written into the notebook carry through to the output.

Maps import names to PyPI names

Knows the common surprises—`cv2` becomes `opencv-python`, `sklearn` becomes `scikit-learn`, `PIL` becomes `Pillow`, `bs4` becomes `beautifulsoup4`, `yaml` becomes `PyYAML`—so `pip install -r` succeeds the first time.

Drops the standard library

Modules shipped with CPython (`os`, `json`, `pathlib`, `typing`, …) are filtered out by default so the requirements file lists what pip actually needs to fetch.

Sort, dedupe, and pin

Duplicates collapse to one entry per package, the list sorts alphabetically, and pins from inline `!pip install pkg==1.2` lines are preserved when you keep the option on.

Stays in your browser

Notebook parsing and the requirements export happen client-side. No notebook contents are sent to a server during extraction.

Friendly header you can keep or strip

By default the file starts with a short comment reminding the reader to review pins before shipping. Toggle Header off when you need a bare list for tooling.

How to generate requirements.txt from a Jupyter notebook

  1. 01

    Upload the .ipynb

    Drop the notebook into the uploader. The parser reads cells in your browser—no server upload.

  2. 02

    Tune the options if you need to

    Choose whether to map import aliases, keep version pins, sort the list, or include the friendly header comment.

  3. 03

    Download requirements.txt

    Click download to save the file. Run `pip install -r requirements.txt` (or the conda equivalent) inside a fresh virtual environment to recreate the notebook’s dependencies.

Frequently asked questions about extracting requirements

Open this requirements.txt extractor, upload the .ipynb, and download the generated file. The list contains every imported third-party package the notebook needs, ready for `pip install -r requirements.txt`.