Overview
yt-dlp-ejs provides external JavaScript support for yt-dlp, enabling it to process YouTube player code across multiple JavaScript runtimes including Deno, Bun, and Node.js.Requirements
Python Version: Requires Python 3.10 or higherSupported Python implementations:
- CPython 3.10, 3.11, 3.12, 3.13, 3.14
- PyPy
Installation
Install with pip
Install yt-dlp-ejs into the same Python environment as yt-dlp:The
-U flag ensures you get the latest version.Verify installation
Verify the installation by importing the module in Python:You should see the installed version number without any errors.
Dependencies
yt-dlp-ejs has zero runtime dependencies. All required JavaScript code is bundled within the package, including:- meriyah - JavaScript parser (ISC License)
- astring - JavaScript code generator (MIT License)
The package itself is licensed under the Unlicense, but prebuilt wheels include third-party dependencies under their respective licenses (ISC and MIT).
What Gets Installed
When you install yt-dlp-ejs, you get:Python API
Python functions to access the JavaScript solver bundles
Core Bundle
Minified JavaScript solver for processing player code (
core.min.js)Library Bundle
Minified JavaScript library bundle for extended functionality (
lib.min.js)Version Info
Version metadata for tracking installed releases
Troubleshooting
Python Version Issues
If you encounter errors about Python version compatibility:Import Errors
If you get import errors, ensure yt-dlp-ejs is installed in the correct environment:Next Steps
Quickstart
Get started with a working example
API Reference
Explore the full API documentation
