Netflix Scrapper
A powerful CLI tool to automate browser interactions, intercept stream URLs, and download media from streaming mirror sites using yt-dlp and ffmpeg.
Important Notice
- This project does not use the official Netflix API.
- The implementation targets streaming mirror sites (e.g.,
net22.cc,net51.cc) via browser automation. - Disclaimer: You are solely responsible for complying with local laws, platform Terms of Service, and copyright rules. Usage may violate applicable legislation depending on your jurisdiction.
Quick Start
1. Install System Dependencies
You must have ffmpeg and Google Chrome installed on your system.
- FFmpeg: Required to merge video and audio streams seamlessly.
- Google Chrome: Required for the browser automation engine.(Any other browser can be used too but you have to pass its flags as an argument) - see CLI flags
Installation help for FFmpeg:
- Ubuntu/Debian:
sudo apt install ffmpeg - macOS (Homebrew):
brew install ffmpeg - Windows: Download FFmpeg and add it to your system PATH.
2. Basic Installation (via Pip)
The fastest way to get started:
pip install netflix-scrapper
3. Alternative Installation (Development)
If you want to run the latest code from source:
git clone https://github.com/AliHaSSan-13/Netflix-scrapper
cd Netflix-scrapper
pip install .
4. Run the Tool
After installation, you can launch the app directly from your terminal by simply typing:
netflix-scrapper
Zero-Touch Onboarding: On the very first run, the tool automatically detects if
yt-dlpor browser binaries are missing and offers to install them for you.
Prerequisites: Authentication Cookies
✅ Ready to Go: The
cookies.jsonfile is included when you install the package viapip! The tool uses a default set of cookies out-of-the-box. NOTE: The cookies are for firefox browser only.
If the default cookies ever expire or stop working, you can update them using your own active session:
- Navigate to the mirror site (e.g.,
https://net22.cc/home). - Sign in to your account.
- Use a browser extension (like Export Cookies or similar) to export your active session cookies as JSON.
- If you haven't run the tool yet, manually create the config directory:
mkdir -p ~/.netflix-scrapper/ - Save the exported JSON file precisely at
~/.netflix-scrapper/cookies.json(overwriting the default one).
Features
- Interactive CLI: Simple question-and-answer workflow to select titles, languages, and episodes.
- Zero-Touch Onboarding: Automatic detection and installation of Chromium (default) and
yt-dlp. - Engine Selection: Toggle between
chromium,firefox, orwebkitvia flags. - Rich Progress Bars: Enhanced
tqdmbars with real-time download speed tracking. - Human Simulation: Organic mouse movements and delays to minimize bot detection.
- Smart Resume: Persisted run state allows resuming interrupted downloads.
CLI Usage & Flags
# Example: Search and run with Firefox engine
netflix-scrapper --query "Breaking Bad" --browser firefox
| Flag | Shortcut | Description |
|---|---|---|
--query |
-q |
Initial search string for title. |
--browser |
-b |
Browser engine (chromium, firefox, webkit). |
--headless |
Run without a visible browser window. | |
--output |
-o |
Default download directory path. |
--config |
-c |
Path to a custom config.yaml. |
Configuration
Settings are stored in ~/.netflix-scrapper/config.yaml. You can customize selectors, timeouts, and network interception rules there.
Troubleshooting
ffmpegnot found: Ensureffmpegis in your systemPATH.- Browser launch failure: Run
playwright installor allow the tool to auto-install. - Verification Loop: If blocked, run with
--no-headlessto manually complete the verification if the simulator fails.
License
MIT License. See LICENSE for details.
Metadata
Release files for netflix-scrapper 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| netflix_scrapper-1.1.0.tar.gz | 25.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| netflix_scrapper-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 53.1 kB
Release files / netflix_scrapper-1.1.0.tar.gz
| Download URL | netflix_scrapper-1.1.0.tar.gz |
|---|---|
| Size | 25.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f946e397dec8b214ad9b496c309835f5a72f52791858d7aba60fd3b4ba9dc02
|
|
BLAKE2b-256 checksum How to use checksums |
cb6e160135c8c08788d92f3c1d7dcd54d9aab313643ec393b0bb6fad4bd8ec93
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 2, 2026.
Transparency logRelease files / netflix_scrapper-1.1.0-py3-none-any.whl
| Download URL | netflix_scrapper-1.1.0-py3-none-any.whl |
|---|---|
| Size | 27.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
06500ed494891598fbd4f674cfdc774b8d0d6393ee0a803904f70f3b54d39978
|
|
BLAKE2b-256 checksum How to use checksums |
1b0a881f872a7be341bc9f7cf2fd81d0833f7949fd432b2cd81f71f442f2e667
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 2, 2026.
Transparency log