dl-plus
A youtube-dl extension with pluggable extractors
Description
dl-plus is an extension and a drop-in replacement of youtube-dl (or any compatible fork, e.g., yt-dlp). The main goal of the project is to add an easy-to-use extractor plugin system to youtube-dl while maintaining full backward compatibility.
dl-plus is not a fork of youtube-dl and does not contain code from youtube-dl, it is a pure dynamic wrapper (thanks to Python dynamic nature) hacking some youtube-dl internals.
Installation
-
Install
dl-plus:-
using pipx:
pipx install dl-plus -
using pip:
pip install dl-plus
(*nix) Alternatively, you can download a single file binary (zipapp) and put it somewhere in your
PATH:curl -L https://github.com/un-def/dl-plus/releases/latest/download/dl-plus -o dl-plus chmod a+x dl-plus -
-
Install a backend —
youtube-dlor any compatible package (fork), e.g.,yt-dlp:-
using
dl-plusitself:dl-plus --cmd backend install yt-dlp -
using pipx:
pipx inject dl-plus yt-dlp -
using pip:
pip install yt-dlp
-
-
(optional) Install some extractor plugins:
-
using
dl-plusitself:dl-plus --cmd extractor install un1def/goodgamePyPI package names are supported too:
dl-plus --cmd extractor install dl-plus-extractor-un1def-goodgame -
using pipx:
pipx inject dl-plus dl-plus-extractor-un1def-goodgame -
using pip:
pip install dl-plus-extractor-un1def-goodgame
-
-
(optional) Create
dl-plus→youtube-dlsymlink (for apps relying onyoutube-dlexecutable inPATH, e.g., mpv):-
*nix:
dlp=$(command -v dl-plus 2>&1) && ln -s "$dlp" "$(dirname "$dlp")/youtube-dl"
Use
ln -sfinstead ofln -sto overwrite an existingyoutube-dlexecutable. -
Windows (PowerShell, requires administrative privileges):
$dlp = (Get-Command -ErrorAction:Stop dl-plus).Path; New-Item -ItemType SymbolicLink -Path ((Get-Item $dlp).Directory.FullName + "\youtube-dl.exe") -Target $dlp
-
Extractor Plugin Authoring Guide
See docs/extractor-plugin-authoring-guide.md.
Available Extractor Plugins
See docs/available-extractor-plugins.md.
License
The MIT License.
Metadata
Release files for dl-plus 0.10.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dl_plus-0.10.1.tar.gz | 26.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dl_plus-0.10.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 62.8 kB
Release files / dl_plus-0.10.1.tar.gz
| Download URL | dl_plus-0.10.1.tar.gz |
|---|---|
| Size | 26.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc0a81f06ec11f7af9e8a279620a10e3945aee508268f98f7af6b24124f20222
|
|
BLAKE2b-256 checksum How to use checksums |
7e082e6855a944d493facb02f0a802f5e97b67fc03fc8c2465042b44a7f8fff0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.1
|
Release files / dl_plus-0.10.1-py3-none-any.whl
| Download URL | dl_plus-0.10.1-py3-none-any.whl |
|---|---|
| Size | 36.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ecc9c15440f51004d2b958f65d5c71397e9f2ae190eb89b5ea4f68323df26779
|
|
BLAKE2b-256 checksum How to use checksums |
945a04e145f1087884ea78a41db6ebb842853b9a2f7a1f1af9b58c33f62f8c5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.1
|