Unofficial API for YouTube Music
Project description
ytmusicapi is a Python 3 library to send requests to the YouTube Music API. It emulates YouTube Music web client requests using the user’s cookie data for authentication.
Features
At this point ytmusicapi supports nearly all content interactions in the YouTube Music web app. If you find something missing or broken, feel free to create an issue
search (including all filters)
get artist information and releases (songs, videos, albums, singles, related artists)
get user information (videos, playlists)
get albums
get song metadata
get watch playlists (next songs when you press play/radio/shuffle in YouTube Music)
get song lyrics
get moods and genres playlists
get latest charts (globally and per country)
get library contents: playlists, songs, artists, albums and subscriptions
add/remove library content: rate songs, albums and playlists, subscribe/unsubscribe artists
get and modify play history
create and delete playlists
modify playlists: edit metadata, add/move/remove tracks
get playlist contents
get playlist suggestions
upload songs and remove them again
list uploaded songs, artists and albums
Usage
from ytmusicapi import YTMusic
yt = YTMusic('headers_auth.json')
playlistId = yt.create_playlist('test', 'test description')
search_results = yt.search('Oasis Wonderwall')
yt.add_playlist_items(playlistId, [search_results[0]['videoId']])
The tests are also a great source of usage examples.
Requirements
Python 3.8 or higher - https://www.python.org
Setup and Usage
See the Documentation for detailed instructions
Contributing
Pull requests are welcome. There are still some features that are not yet implemented. Please, refer to CONTRIBUTING.rst for guidance.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ytmusicapi-0.25.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d47a8803dceeb0289c7cf29a0317c5d6051d0b7c28fda067f6abb001746f7ac |
|
MD5 | 4ea55b1d95e4d802f567bdfc054331f5 |
|
BLAKE2b-256 | d6bd1e6418ddae12b320292fe1a044e25f9ff8b3b144fef0055919674cbfda46 |