Skip to main content

Python 3 library for downloading YouTube Videos.

Project description

pytubefix

PyPI - Downloads PyPI - License PyPI - Version

This python3 library is a solution to pytube's problem regarding update delays

install:

pip install pytubefix

usage:

from pytubefix import YouTube
from pytubefix.cli import on_progress
 
url = input("URL >")
 
yt = YouTube(url, on_progress_callback = on_progress)
print(yt.title)
 
ys = yt.streams.get_highest_resolution()
ys.download()

If you want to save in .mp3 just pass the mp3=True parameter in the download() method, must be used together with the get_audio_only method:

from pytubefix import YouTube
from pytubefix.cli import on_progress
 
url = input("URL >")
 
yt = YouTube(url, on_progress_callback = on_progress)
print(yt.title)
 
ys = yt.streams.get_audio_only() # use this method -> get_audio_only()
ys.download(mp3=True) # pass the parameter mp3=Tre to save in .mp3

if you want to download complete playlists:

from pytubefix import YouTube
from pytubefix import Playlist
from pytubefix.cli import on_progress
 
url = input("URL Here >")

pl = Playlist(url)

for video in pl.videos:
    ys = video.streams.get_audio_only()
    ys.download(mp3=True) # pass the parameter mp3=Tre to save in .mp3

Subtitle/Caption Tracks:

viewing available subtitles:

from pytubefix import YouTube

yt = YouTube('http://youtube.com/watch?v=2lAe1cqCOXo')
subtitles = yt.captions

print(subtitles)

printing the subtitle tracks:

from pytubefix import YouTube
 

yt = YouTube('http://youtube.com/watch?v=2lAe1cqCOXo')

caption = yt.captions.get_by_language_code('en')
print(caption.generate_srt_captions())

now you can save subtitles to a txt file:

from pytubefix import YouTube
 

yt = YouTube('http://youtube.com/watch?v=2lAe1cqCOXo')

caption = yt.captions.get_by_language_code('en')
caption.save_captions("captions.txt")

Using Channels:

get the channel name:

from pytubefix import Channel

c = Channel("https://www.youtube.com/@ProgrammingKnowledge/featured")

print(f'Channel name: {c.channel_name}')

to download all videos from a channel:

from pytubefix import Channel

c = Channel("https://www.youtube.com/@ProgrammingKnowledge")

print(f'Downloading videos by: {c.channel_name}')

for video in c.videos:
    download = video.streams.get_highest_resolution().download()

Project details


Release history Release notifications | RSS feed

This version

1.3.0

Download files

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

Source Distribution

pytubefix-1.3.0.tar.gz (67.4 kB view details)

Uploaded Source

File details

Details for the file pytubefix-1.3.0.tar.gz.

File metadata

  • Download URL: pytubefix-1.3.0.tar.gz
  • Upload date:
  • Size: 67.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for pytubefix-1.3.0.tar.gz
Algorithm Hash digest
SHA256 0646592c7c76978e73ad5d3cce24cd036e4984cecf266efe046e4d2c51ac87be
MD5 8f00afa0472463fc94a18a43442d0d28
BLAKE2b-256 f425200fddd102b1ddf78a1c776ffd5b4f73b07f383eb9e7015e0d7c99150955

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