Skip to main content

A Simple CLI Tool to Download Your Favorite YouTube Videos Effortlessly!

Project description

PytubePP - (Pytube Post Processor)

A Simple CLI Tool to Download Your Favourite YouTube Videos Effortlessly!

status PypiDownloads PypiVersion python builds PRs

😀 GOOD NEWS: If you are Windows(10/11) user and don't want to bother remembering PytubePP Commands! (You are not familier with Command Line Tools). We recently released a Browser Extension that can auto detect YouTube Videos and You can download the Video in one click directly from the browser using PytubePP CLI. Install PytubePP Helper app in your System and add PytubePP Extension in your Browser to get started.

🏷️ Features

  • Auto Post-Process & Merge YouTube DASH Streams
  • Supports upto 8K 60fps HDR Stream Download
  • Supports MP3 Download (with Embeded Thumbnail and Tags)
  • Smart Stream Selection
  • Highly Configurable and Many More 😉

📎 Pre-Requirements

🧩 Python Dependencies

🛠️ Installation

  1. Install Python and PIP
    • Linux (Debian): Python is pre-installed install PIP using sudo apt install python3-pip
    • Linux (Fedora): Python is pre-installed install PIP using sudo dnf install python3-pip
    • Linux (Arch): Python is pre-installed install PIP using sudo pacman -S python-pip
    • Windows (10/11): winget install Python.Python.3.13
    • MacOS (using Homebrew): brew install python
    • Android (using Termux): pkg install python
  2. Install FFmpeg
    • Linux (Debian): sudo apt install ffmpeg
    • Linux (Fedora): sudo dnf install ffmpeg-free
    • Linux (Arch): sudo pacman -S ffmpeg
    • Windows (10/11): winget install ffmpeg
    • MacOS (using Homebrew): brew install ffmpeg
    • Android (using Termux): pkg install ffmpeg
  3. Install PytubePP (using PIP)
pip install pytubepp

NOTE: Always make sure 'PytubePP' and 'Pytubefix' is on the latest version to avoid issues (update them at least once a week) (Use the command below to update)

pip install pytubefix pytubepp --upgrade

📌 Commands and Flags

Using PytubePP is as simple as just supplying it only the YouTube video url as argument! ** Before Starting Please NOTE: PytubePP follows a simple rule - "Use the Default Download Configuration if No Flags are Passed"

  • To download a video in maximum available resolution the command will look like:
pytubepp "https://youtube.com/watch?v=2lAe1cqCOXo"
  • To download the video in a specific resolution (suppose 480p) the command will be:
pytubepp "https://youtube.com/watch?v=2lAe1cqCOXo" -s 480p
  • To download the video in audio-only MP3 format the command will be:
pytubepp "https://youtube.com/watch?v=2lAe1cqCOXo" -s mp3
  • To fetch the video information the command will be:
pytubepp "https://youtube.com/watch?v=2lAe1cqCOXo" -i
  • To cancel/stop an ongoing download press CTRL + C on keyboard (it is recommended to run the -ct flag once after canceling an ongoing download).
  • List of all available flags are given below:
Flag Usage Requires Parameter Requires URL Parameters Default
-s Choose preferred download stream YES YES 144 144p 240 240p 360 360p 480 480p 720 720p hd 1080 1080p fhd 1440 1440p 2k 2160 2160p 4k 4320 4320p 8k mp3 (Pass any one of them) Your chosen Default Stream via -ds flag
-i Shows the video information like: Title, Author, Views, Publication Date, Duration, Available Download Streams NO YES No parameters No default
-ri Shows the video information in raw json format NO YES No parameters No default
-jp Shows raw json output in prettified view (with indentation: 4) (primarily used with -ri flag) NO YES No parameters No default
-ds Set default download stream YES NO 144p 240p 360p 480p 720p 1080p 1440p 2160p 4320p mp3 max (Pass any one of them) max
-df Set custom download folder path YES NO Use the full path excluding the last trailing slash within double quotes eg(in Linux): "/path/to/folder" (Make sure the folder path you enterted is already created and accessable) Within PytubePP Downloads folder in your System's Downloads folder
-r Reset to default configuration (Download Folder, Default Stream) NO NO No parameters No default
-sc Show all current user configurations NO NO No parameters No default
-ct Clear temporary files (audio, video, thumbnail) of the failed, incomplete downloads NO NO No parameters No default

⭕ Noticed any Bugs? or Want to give me some suggetions? always feel free to open an issue...!!

📝 License & Usage

PytubePP - (Pytube Post Processor) is a Fully Open Sourced Project licensed under MIT License. Anyone can view, modify, use (personal and commercial) or distribute it's sources without any attribution and extra permissions.

🌟 Liked this project? Please consider giving it a star to show me your appreciation


An Open Sourced Project - Developed with ❤️ by Subhamoy

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

pytubepp-1.1.2.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

pytubepp-1.1.2-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file pytubepp-1.1.2.tar.gz.

File metadata

  • Download URL: pytubepp-1.1.2.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pytubepp-1.1.2.tar.gz
Algorithm Hash digest
SHA256 c8f52fcad823f4f8b2abe5c08cb7f03b3fe286dd1c50a8023873adf3e895f8e8
MD5 c7fb134a4b61dbe923d3d7f59e2d3a44
BLAKE2b-256 57327014890b71666a2a50130e17adc0c9c7e2f43871448beb58ba8e1558bc77

See more details on using hashes here.

File details

Details for the file pytubepp-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: pytubepp-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pytubepp-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 456a9f23ccb2e0b2f119a5d05629cb283f0466e931d2eb108d81256ee7c58de3
MD5 9bb9b188b97d0f9c4683927fb6eff2e8
BLAKE2b-256 94d0b8eb801f47356921f8c20e6809f727f966951f372850684631ccbb07ae84

See more details on using hashes here.

Supported by

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