Skip to main content

YouTube video downloader with best quality

Project description

riptube

riptube

Python License yt-dlp

📺 Download YouTube videos and extract audio with one command 🎵

Installation · Usage · Options

Overview

CI

A CLI tool for downloading YouTube videos and extracting audio tracks. Built on top of yt-dlp, it handles the complexities of video downloading with automatic format selection, audio extraction, and cookie support for restricted content.

Features

  • Best quality by default - Automatically selects the highest available video and audio quality
  • Audio extraction - Extract audio tracks as MP3 files with a single flag
  • Cookie support - Access age-restricted or private videos using browser cookies
  • Clean filenames - Automatic sanitization of video titles for safe file names

Installation

pipx install riptube

Development install with uv

uv tool install . --editable

The package is published on PyPI as riptube, and the installed command is riptube.

If you want to use it as a Python package instead of the CLI:

pip install riptube
import riptube
from riptube import download_video

print(riptube.__version__)
download_video("https://www.youtube.com/watch?v=dQw4w9WgXcQ")

Dependencies

Dependency Required Purpose
FFmpeg Yes Video/audio processing and merging
aria2 No Faster downloads (optional)

macOS:

brew install ffmpeg aria2

Linux:

sudo apt install ffmpeg aria2

Windows: Download FFmpeg from ffmpeg.org

Usage

Download a video

riptube https://www.youtube.com/watch?v=dQw4w9WgXcQ

Specify output file

riptube https://www.youtube.com/watch?v=dQw4w9WgXcQ -o video.mp4

Extract audio only

riptube https://www.youtube.com/watch?v=dQw4w9WgXcQ -a

Use cookies for restricted videos

riptube https://www.youtube.com/watch?v=dQw4w9WgXcQ -c cookies.txt

Options

Option Description
-o, --output Output file path (default: auto-generated from video title)
-a, --audio Extract audio track as MP3
-c, --cookies Path to Netscape format cookies.txt file

Development

# Clone and install in development mode
git clone https://github.com/tsilva/riptube.git
cd riptube
uv tool install . --editable

# Or install with pipx
pipx install . --force

# Run directly without installing
python -m riptube.cli <url>

Releases

Use the Make targets to cut a release from a clean main branch:

make release-patch
make release-minor
make release-major

Each target bumps the version, refreshes uv.lock, commits the release change, and pushes to main. That push triggers the release workflow, which builds the package, publishes it to PyPI, and then creates the matching GitHub release. The workflow can also be re-run manually from GitHub via workflow_dispatch.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

riptube-0.1.1.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

riptube-0.1.1-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file riptube-0.1.1.tar.gz.

File metadata

  • Download URL: riptube-0.1.1.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for riptube-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ba1bcfad055d177927422093cc635d60258af00d4c4c081454916b7968806419
MD5 5cc2781a6d2e5cca5ed9ec9a6e17f6ba
BLAKE2b-256 b7a7c5e70a144965d3aca5ef42d2a931c055a78c1dc23bf2d0512ed0697b50c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for riptube-0.1.1.tar.gz:

Publisher: release.yml on tsilva/riptube

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file riptube-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: riptube-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for riptube-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d052319343ed3ac171428a892d82685175a66f4ab748bf2f9bdbbd62ffa992a9
MD5 95771aa98e1d7d42997a46d9ec722aa0
BLAKE2b-256 477e7a039bcf5368ac4c706709a6edefa9fc358afe1d44c050143d972e1ab369

See more details on using hashes here.

Provenance

The following attestation bundles were made for riptube-0.1.1-py3-none-any.whl:

Publisher: release.yml on tsilva/riptube

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page