Skip to main content

CLI tool for download from YouTube

Project description

YouTube Downloader

  1. YouTube Video download

    • From a video or from a playlist
    • Download caption option available
    • Selectable resolution
  2. YouTube Audio download

    • From a video or from a playlist

Installation & Upgrade

  1. To install
  • Using pip

    pip install youtube-downloader-cli
    
  • Using uv

    uv tool install youtube-downloader-cli
    
  • Using uvx to use this tool directly without install

    uvx youtube-downloader-cli
    
  1. To upgrade
  • Using pip

    pip install --upgrade youtube-downloader-cli
    
  • Using uv

    uv tool install --upgrade --reinstall youtube-downloader-cli
    
  • Using uvx

    uvx youtube-downloader-cli@latest
    

CLI Application

Step 1. Enter YouTube video URL (auto-detect from clipboard)

Step 2. Choose options

Available options:

1. Download audio only 
2. Download video 
3. Download video with caption 
4. Download audios from playlist
5. Download videos from playlist

Step 3. Choose a directory to save file(s)

Step 4. Choose preferred resolution for video downloading

If option 2, 3, or 5 is chosen in Step 2, please select a preferred resolution for video downloading.

Available options:

SD - 480p
HD - 720p
FullHD - 1080p
QHD - 1440p
4K - 2160p
best

Video with highest resolution, but not higher than user's choice (unless 'best' is chosen), will be downloaded.

Step 5. Choose captions to download

If option 3 is chosen in Step 2, please select which caption(s) to be downloaded. User will only be prompted if more than one caption is available for selected video.


Note: If PyTubeFix failed to connect to YouTube, it may need to be upgraded to the newest version.

Using pip: pip install --upgrade pytubefix.

Or using uv: uv install --upgrade --reinstall youtube-downloader-cli.

Dependencies

  1. For CLI Application

    • pyperclip
    • pytubefix
    • questionary
    • rich
  2. Of pytubefix

    NodeJS is used for POTOKEN generation by pytubefix. If NodeJS is not available, POTOKEN will be skipped, may result in YouTube denying pytubefix's requests.

  3. FFMPEG

    Progressive stream (both audio & video in one file) in YouTube has lower resolution. If ffmpeg is available, high resolution video & audio will be downloaded separately, then merges using ffmpeg.

    If ffmpeg is not available in $PATH, progressive stream will be downloaded.

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

youtube_downloader_cli-0.2.0.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

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

youtube_downloader_cli-0.2.0-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file youtube_downloader_cli-0.2.0.tar.gz.

File metadata

File hashes

Hashes for youtube_downloader_cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d32ce9aff38bac0038dfc9bd1b0aef3797a1965423cd7064d41fa17ef41ae4e8
MD5 986a241fae0f5fabb4dec9245c90385a
BLAKE2b-256 926be3131e09ee340322d4c0a04d0b002172aa11ff86e6a123fd3d3d9dee7d44

See more details on using hashes here.

File details

Details for the file youtube_downloader_cli-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for youtube_downloader_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cba12c88e8154773fe6bee0ce4c68f1894cd7bcd4bb08e606e04885267da7c18
MD5 1c4a99c10f3c9bb6abfd2d2d81b359c4
BLAKE2b-256 ac8b2ddc75baeca840a4741162b21c83d9ed8befbbde72d6d81da13c7bbabcbd

See more details on using hashes here.

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