Create wiki page 'Home'

2026-05-27 14:53:12 +00:00
parent fd06bf8bb7
commit 3b4150418a
+68
@@ -0,0 +1,68 @@
# yt-shorts-downloader
Typed Python library and CLI for downloading YouTube Shorts as MP4 using a Netscape cookie session file.
## What this project does
- validates a Netscape cookie file before download
- validates that the URL belongs to YouTube
- downloads the resulting video as MP4 through yt-dlp
- exposes a typed Python API for returning MP4 bytes in memory
- provides a CLI for saving the MP4 to disk
- publishes package builds to Gitea Packages after successful CI on `main`
## Public contract
- input: YouTube URL and path to a Netscape cookie file
- API output: `DownloadedVideo` with MP4 bytes in memory
- CLI output: filesystem path to the downloaded MP4
## Quick start
### Python API
```python
from yt_shorts_downloader import download
video = download(
'https://www.youtube.com/shorts/VIDEO_ID',
'cookies.txt',
)
assert video.media_type == 'video/mp4'
content = video.content
```
### Save directly to disk
```python
from yt_shorts_downloader import download_to_path
path = download_to_path(
'https://www.youtube.com/shorts/VIDEO_ID',
'cookies.txt',
output_dir='downloads',
)
```
### CLI
```bash
uv run yt-shorts-downloader \
'https://www.youtube.com/shorts/VIDEO_ID' \
cookies.txt \
--output-dir downloads
```
## Requirements
- Python 3.12+
- valid Netscape cookie file
- Deno or Node.js 22+
- optional but recommended: ffmpeg
## Documentation
- [API](API)
- [Session File](Session-File)
- [Development and CI](Development-and-CI)