Access parts of your account unavailable through normal YouTube API access.
poetry add youtube-unofficial
pip install youtube-unofficial
This uses a browser cookie storage to be able to access authorised endpoints. There is no feature to log in. You must be logged on in a supported browser. This supports any browser that yt-dlp supports.
Usage: youtube [OPTIONS] COMMAND [ARGS]...
Unofficial YouTube CLI.
Options:
-h, --help Show this message and exit.
Commands:
clear-watch-history Clear watch history.
clear-watch-later Clear watch later queue.
print-history Print your watch history.
print-playlist Print a playlist.
print-watch-later Print your Watch Later playlist.
remove-history-entries Remove videos from Watch History.
remove-video-id Remove videos from a playlist.
remove-watch-later-video-id Remove videos from your Watch Later queue.
toggle-watch-history Disable or enable watch history
Every command takes a --debug
or -d
argument to show very verbose logs.
Some commands accept a -j
/--json
argument to print machine-readable output as JSON lines.
from youtube_unofficial import YouTubeClient
# Arguments are the browser name and profile.
yt = YouTubeClient('chrome', 'Default')
# Clear watch history
yt.clear_watch_history()
# Remove a single video ID from Watch Later queue
yt.remove_video_id_from_playlist('WL', video_id)
# Clear entire Watch Later queue
yt.clear_watch_later()
For a new feature to be accepted, it must be something that cannot be achieved with Google's official API. It also has to be on the youtube.com/youtu.be website or app and not a place like My Activity.
Code must run through yarn qa
and have zero issues.