<h1 align="center">yt-dlp-bonus</h1>
<p align="center">
<a href="#"><img alt="Python version" src="https://img.shields.io/pypi/pyversions/yt-dlp-bonus"/></a>
<a href="LICENSE"><img alt="License" src="https://img.shields.io/static/v1?logo=MIT&color=Blue&message=MIT&label=License"/></a>
<a href="https://pypi.org/project/yt-dlp-bonus"><img alt="PyPi" src="https://img.shields.io/pypi/v/yt-dlp-bonus"></a>
<a href="https://github.com/Simatwa/yt-dlp-bonus/releases"><img src="https://img.shields.io/github/v/release/Simatwa/yt-dlp-bonus?label=Release&logo=github" alt="Latest release"></img></a>
<a href="https://github.com/psf/black"><img alt="Black" src="https://img.shields.io/badge/code%20style-black-000000.svg"/></a>
<a href="https://pepy.tech/project/yt-dlp-bonus"><img src="https://static.pepy.tech/personalized-badge/yt-dlp-bonus?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads" alt="Downloads"></a>
<a href="https://hits.seeyoufarm.com"><img src="https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com/Simatwa/yt-dlp-bonus"/></a>
</p>
This library does a simple yet the Lord's work; extends [yt-dlp](https://github.com/yt-dlp/yt-dlp) *(YoutubeDL)* and adds modelling support to the extracted YoutubeDL results using [pydantic](https://github.com/pydantic/pydantic).
## Installation
```sh
pip install yt-dlp-bonus -U
```
## Usage
<details open>
<summary>
### Search videos
</summary>
```python
from yt_dlp_bonus import YoutubeDLBonus
yt = YoutubeDLBonus()
search_results = yt.search_and_form_model(
query="hello",
limit=1
)
print(search_results)
```
</details>
<details>
<summary>
### Download Video
</summary>
```python
from yt_dlp_bonus import YoutubeDLBonus, Downloader
video_url = "https://youtu.be/S3wsCRJVUyg"
yt_bonus = YoutubeDLBonus()
extracted_info = yt_bonus.extract_info_and_form_model(url=video_url)
downloader = Downloader(yt=yt_bonus)
downloader.ydl_run(
extracted_info, video_format="bestvideo"
)
```
</details>
<details>
<summary>
### Download Audio
</summary>
```python
from yt_dlp_bonus import YoutubeDLBonus, Downloader
video_url = "https://youtu.be/S3wsCRJVUyg"
yt_bonus = YoutubeDLBonus()
extracted_info = yt_bonus.extract_info_and_form_model(url=video_url)
downloader = Downloader(yt=yt_bonus)
downloader.ydl_run(
extracted_info, video_format=None, audio_format="bestaudio"
)
```
</details>
## CLI
### Download Video
Usage : `$ yt-dlpb download-video <VIDEO-URL>`
<details>
<summary>
<code>$ python -m yt_dlp_bonus download-video --help</code>
</summary>
```
Usage: python -m yt_dlp_bonus download-video [OPTIONS] URL
Download a youtube video
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
│ * url TEXT Link pointing to a Youtube video [default: None] │
│ [required] │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────╮
│ --quality [144p|240p|360p|480p Video quality to │
│ |720p|1080p|2k|4k|8k download │
│ |best] [default: best] │
│ --dir DIRECTORY Directory to save the │
│ video to │
│ [default: │
│ /home/smartwa/git/sm… │
│ --format [webm|mp4] Video format to │
│ process ie. mp4 or │
│ webm │
│ [default: webm] │
│ --quiet --no-quiet Do not stdout │
│ anything │
│ [default: no-quiet] │
│ --subtitle-lang TEXT Subtitle language to │
│ embed in the video │
│ [default: None] │
│ --help Show this message and │
│ exit. │
╰──────────────────────────────────────────────────────────────────────────────╯
```
</details>
### Download Audio
Usage : `$ yt-dlp download-audio <VIDEO-URL>`
<details>
<summary>
<code>$ python -m yt_dlp_bonus download-audio --help</code>
</summary>
```
Usage: python -m yt_dlp_bonus download-audio [OPTIONS] URL
Download audio version of a YouTube video
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
│ * url TEXT Link pointing to a Youtube video [default: None] │
│ [required] │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────╮
│ --quality [ultralow|low|medium|be Video quality to │
│ staudio] download │
│ [default: bestaudio] │
│ --dir DIRECTORY Directory to save the │
│ video to │
│ [default: │
│ /home/smartwa/git/smart… │
│ --format [webm|mp4] Video format to process │
│ ie. mp4 or webm │
│ [default: webm] │
│ --bitrate [64k|96k|128k|192k|256k Audio bitrate while │
│ |320k] converting to mp3 │
│ [default: None] │
│ --quiet --no-quiet Do not stdout anything │
│ [default: no-quiet] │
│ --help Show this message and │
│ exit. │
╰──────────────────────────────────────────────────────────────────────────────╯
```
</details>
<details>
<summary>
<code>$ python -m yt_dlp_bonus --help</code>
</summary>
```
Usage: python -m yt_dlp_bonus [OPTIONS] COMMAND [ARGS]...
Download Youtube videos in a number of formats.
╭─ Options ────────────────────────────────────────────────────────────────────╮
│ --install-completion Install completion for the current shell. │
│ --show-completion Show completion for the current shell, to copy │
│ it or customize the installation. │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────────────╮
│ download-video Download a youtube video │
│ download-audio Download audio version of a YouTube video │
╰──────────────────────────────────────────────────────────────────────────────╯
```
</details>
> [!NOTE]
> Incase requests are detected as coming from bot then consider using a proxy from **Canada**, **USA** or any other location that will work. For more information on how to bypass bot detection then consider going through [this Wiki](https://github.com/yt-dlp/yt-dlp/wiki/Extractors).
# License
[The Unlicense](LICENSE)
Raw data
{
"_id": null,
"home_page": "https://github.com/Simatwa/yt-dlp-bonus",
"name": "yt-dlp-bonus",
"maintainer": "Smartwa",
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "yt-dlp, yt-dlp-bonus",
"author": "Smartwa",
"author_email": "simatwacaleb@proton.me",
"download_url": "https://files.pythonhosted.org/packages/30/ff/e1ee5f1d79345a4b07e3e52972da66562f53d03d351b5e4035bf3fc8742d/yt_dlp_bonus-0.2.4.tar.gz",
"platform": null,
"description": "<h1 align=\"center\">yt-dlp-bonus</h1>\n\n<p align=\"center\">\n<a href=\"#\"><img alt=\"Python version\" src=\"https://img.shields.io/pypi/pyversions/yt-dlp-bonus\"/></a>\n<a href=\"LICENSE\"><img alt=\"License\" src=\"https://img.shields.io/static/v1?logo=MIT&color=Blue&message=MIT&label=License\"/></a>\n<a href=\"https://pypi.org/project/yt-dlp-bonus\"><img alt=\"PyPi\" src=\"https://img.shields.io/pypi/v/yt-dlp-bonus\"></a>\n<a href=\"https://github.com/Simatwa/yt-dlp-bonus/releases\"><img src=\"https://img.shields.io/github/v/release/Simatwa/yt-dlp-bonus?label=Release&logo=github\" alt=\"Latest release\"></img></a>\n<a href=\"https://github.com/psf/black\"><img alt=\"Black\" src=\"https://img.shields.io/badge/code%20style-black-000000.svg\"/></a>\n<a href=\"https://pepy.tech/project/yt-dlp-bonus\"><img src=\"https://static.pepy.tech/personalized-badge/yt-dlp-bonus?period=total&units=international_system&left_color=grey&right_color=blue&left_text=Downloads\" alt=\"Downloads\"></a>\n<a href=\"https://hits.seeyoufarm.com\"><img src=\"https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com/Simatwa/yt-dlp-bonus\"/></a>\n</p>\n\nThis library does a simple yet the Lord's work; extends [yt-dlp](https://github.com/yt-dlp/yt-dlp) *(YoutubeDL)* and adds modelling support to the extracted YoutubeDL results using [pydantic](https://github.com/pydantic/pydantic).\n\n## Installation\n\n```sh\npip install yt-dlp-bonus -U\n```\n\n## Usage\n\n<details open>\n\n<summary>\n\n### Search videos\n\n</summary>\n\n```python\nfrom yt_dlp_bonus import YoutubeDLBonus\n\nyt = YoutubeDLBonus()\n\nsearch_results = yt.search_and_form_model(\n query=\"hello\",\n limit=1\n )\n\nprint(search_results)\n\n```\n\n</details>\n\n<details>\n\n<summary>\n\n### Download Video\n\n</summary>\n\n```python\nfrom yt_dlp_bonus import YoutubeDLBonus, Downloader\n\nvideo_url = \"https://youtu.be/S3wsCRJVUyg\"\n\nyt_bonus = YoutubeDLBonus()\n\nextracted_info = yt_bonus.extract_info_and_form_model(url=video_url)\n\ndownloader = Downloader(yt=yt_bonus)\ndownloader.ydl_run(\n extracted_info, video_format=\"bestvideo\"\n)\n```\n\n</details>\n\n<details>\n<summary>\n\n### Download Audio\n\n</summary>\n\n```python\nfrom yt_dlp_bonus import YoutubeDLBonus, Downloader\n\nvideo_url = \"https://youtu.be/S3wsCRJVUyg\"\n\nyt_bonus = YoutubeDLBonus()\n\nextracted_info = yt_bonus.extract_info_and_form_model(url=video_url)\n\ndownloader = Downloader(yt=yt_bonus)\n\ndownloader.ydl_run(\n extracted_info, video_format=None, audio_format=\"bestaudio\"\n)\n```\n\n</details>\n\n## CLI\n\n### Download Video\n\nUsage : `$ yt-dlpb download-video <VIDEO-URL>`\n\n<details>\n\n<summary>\n<code>$ python -m yt_dlp_bonus download-video --help</code>\n</summary>\n\n```\n \n Usage: python -m yt_dlp_bonus download-video [OPTIONS] URL \n \n Download a youtube video \n \n\u256d\u2500 Arguments \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 * url TEXT Link pointing to a Youtube video [default: None] \u2502\n\u2502 [required] \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\u256d\u2500 Options \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 --quality [144p|240p|360p|480p Video quality to \u2502\n\u2502 |720p|1080p|2k|4k|8k download \u2502\n\u2502 |best] [default: best] \u2502\n\u2502 --dir DIRECTORY Directory to save the \u2502\n\u2502 video to \u2502\n\u2502 [default: \u2502\n\u2502 /home/smartwa/git/sm\u2026 \u2502\n\u2502 --format [webm|mp4] Video format to \u2502\n\u2502 process ie. mp4 or \u2502\n\u2502 webm \u2502\n\u2502 [default: webm] \u2502\n\u2502 --quiet --no-quiet Do not stdout \u2502\n\u2502 anything \u2502\n\u2502 [default: no-quiet] \u2502\n\u2502 --subtitle-lang TEXT Subtitle language to \u2502\n\u2502 embed in the video \u2502\n\u2502 [default: None] \u2502\n\u2502 --help Show this message and \u2502\n\u2502 exit. \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\n\n```\n\n</details>\n\n### Download Audio\n\nUsage : `$ yt-dlp download-audio <VIDEO-URL>`\n\n<details>\n<summary>\n<code>$ python -m yt_dlp_bonus download-audio --help</code>\n</summary>\n\n```\n \n Usage: python -m yt_dlp_bonus download-audio [OPTIONS] URL \n \n Download audio version of a YouTube video \n \n\u256d\u2500 Arguments \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 * url TEXT Link pointing to a Youtube video [default: None] \u2502\n\u2502 [required] \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\u256d\u2500 Options \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 --quality [ultralow|low|medium|be Video quality to \u2502\n\u2502 staudio] download \u2502\n\u2502 [default: bestaudio] \u2502\n\u2502 --dir DIRECTORY Directory to save the \u2502\n\u2502 video to \u2502\n\u2502 [default: \u2502\n\u2502 /home/smartwa/git/smart\u2026 \u2502\n\u2502 --format [webm|mp4] Video format to process \u2502\n\u2502 ie. mp4 or webm \u2502\n\u2502 [default: webm] \u2502\n\u2502 --bitrate [64k|96k|128k|192k|256k Audio bitrate while \u2502\n\u2502 |320k] converting to mp3 \u2502\n\u2502 [default: None] \u2502\n\u2502 --quiet --no-quiet Do not stdout anything \u2502\n\u2502 [default: no-quiet] \u2502\n\u2502 --help Show this message and \u2502\n\u2502 exit. \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\n```\n\n</details>\n\n<details>\n\n<summary>\n<code>$ python -m yt_dlp_bonus --help</code>\n</summary>\n\n```\n \n Usage: python -m yt_dlp_bonus [OPTIONS] COMMAND [ARGS]... \n \n Download Youtube videos in a number of formats. \n \n\u256d\u2500 Options \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 --install-completion Install completion for the current shell. \u2502\n\u2502 --show-completion Show completion for the current shell, to copy \u2502\n\u2502 it or customize the installation. \u2502\n\u2502 --help Show this message and exit. \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\u256d\u2500 Commands \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 download-video Download a youtube video \u2502\n\u2502 download-audio Download audio version of a YouTube video \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n\n\n```\n\n</details>\n\n> [!NOTE]\n> Incase requests are detected as coming from bot then consider using a proxy from **Canada**, **USA** or any other location that will work. For more information on how to bypass bot detection then consider going through [this Wiki](https://github.com/yt-dlp/yt-dlp/wiki/Extractors).\n\n# License\n\n[The Unlicense](LICENSE)\n",
"bugtrack_url": null,
"license": "The Unlicense",
"summary": "An extension of yt-dlp targeting YoutubeDL with pydantic support.",
"version": "0.2.4",
"project_urls": {
"Bug Report": "https://github.com/Simatwa/yt-dlp-bonus/issues/new",
"Documentation": "https://github.com/Simatwa/yt-dlp-bonus/",
"Download": "https://github.com/Simatwa/yt-dlp-bonus/releases",
"Homepage": "https://github.com/Simatwa/yt-dlp-bonus",
"Issue Tracker": "https://github.com/Simatwa/yt-dlp-bonus/issues",
"Source Code": "https://github.com/Simatwa/yt-dlp-bonus"
},
"split_keywords": [
"yt-dlp",
" yt-dlp-bonus"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "30ffe1ee5f1d79345a4b07e3e52972da66562f53d03d351b5e4035bf3fc8742d",
"md5": "142486c77db04829ae3c9ae925ab44c9",
"sha256": "a577abb192ade10c551975e54d4ffa39b33c47dda4b27e6ac196319a3bed2aed"
},
"downloads": -1,
"filename": "yt_dlp_bonus-0.2.4.tar.gz",
"has_sig": false,
"md5_digest": "142486c77db04829ae3c9ae925ab44c9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 21560,
"upload_time": "2025-01-27T14:10:23",
"upload_time_iso_8601": "2025-01-27T14:10:23.063385Z",
"url": "https://files.pythonhosted.org/packages/30/ff/e1ee5f1d79345a4b07e3e52972da66562f53d03d351b5e4035bf3fc8742d/yt_dlp_bonus-0.2.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-27 14:10:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Simatwa",
"github_project": "yt-dlp-bonus",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "yt-dlp",
"specs": [
[
">=",
"2024.12.13"
]
]
},
{
"name": "pydantic",
"specs": [
[
"==",
"2.9.2"
]
]
}
],
"lcname": "yt-dlp-bonus"
}