Releases: sigma67/ytmusicapi
v1.0.1
v1.0.0
It's been 3 years since #10 was created, but now this project finally has a way of OAuth authentication. Therefore it is considered feature complete for now and ready for a v1.0 release, just in time for almost 1k 🌟! The next major release will be v2.0 featuring proper types with pydantic.
Overall there are not many breaking changes in this release, only the setup procedure has changed. It was a priority to integrate the new OAuth authentication as seamlessly as possible.
Features ✨
- support OAuth authentication (#10, thanks @vixalien).
get_search_suggestions
: get the suggestions that appear during typing on YouTube Music (thanks @omgupta15 )- CLI for setup. Call
ytmusicapi browser
for traditional auth using browser headers orytmusicapi oauth
to use the new OAuth authentication (it's simple and fast!)
Breaking Changes ⚒
- Setup procedure has been reworked. for library use, you can simple do
from ytmusicapi import setup
instead of importing theYTMusic
object
Fixes 🐞
search
has been a bit problematic since the recent server side changes to top results, it should now be more reliable. If you still notice some odd search results please create an issue
v0.25.2
v0.25.1
v0.25.0
Features ✨
- support additional languages: Russian, Hindi, Portuguese, Turkish, Arabic, Urdu (thanks @sheikhhaziq )
add_history_item
: add songs to play history (thanks @impliedchaos )
Changes ⚒
- updated runs parsing for get_library_*_albums
Fixes 🐞
- fixed library functions for some users (#320)
v0.24.1
Changes ⚒
- playlist items now include the
videoType
key (#310, thanks @lsmacedo ) zh_TW
localization is now supported (#314, thanks @terry3041 )get_song
now returns theplaybackTracking
key, making it possible to add items to the personal history (get_history
)
Fixes 🐞
v0.24.0
Python 3.8 is now the minimum supported Python version.
Features ✨
get_album
: other versions of an album (i.e. deluxe edition) are now available as part of the response (#279)
Changes ⚒
get_library_*
methods: future-proofed for future YouTube Music library update thanks to @jake-g- BREAKING
get_playlist_suggestions
removed - instead,
get_playlist
has two new parametersrelated
andsuggestionsLimit
. They can be used to retrieve related items and suggestions (the latter only for owned playlists) - BREAKING
get_watch_playlist_shuffle
removed get_watch_playlist
now hasradio
andshuffle
parameters. These are mutually exclusive. The shuffle parameter is equal to the prior functionality ofget_watch_playlist_shuffle
Fixes 🐞
get_library_albums
andget_artist_albums
: add playlistId key to the album dicts in parse_album by @zarkdav in #304get_home
: fixed an error when watch playlists where present on the home page (for example mixes)get_history
: fixed an issue with unplayable items in the play history (#298, thanks @atlasrule )
v0.23.0
Features ✨
get_tasteprofile
: fetches a list of suggested artists for setting the user's tasteprofile withset_tasteprofile
set_tasteprofile
: set a user's preferred artists as seen in the web interface when first signing in (or when visitingSettings
>Recommendations
>Improve your recommendations
in the web interface). Thanks to @adrinu for implementing these features
Changes ⚒
-
limit=None
: several methods now support setting thelimit
parameter toNone
to retrieve all results (#275, thanks @Auzzy @adrinu )
These include:get_library_songs
get_library_albums
get_library_artists
get_library_subscriptions
get_library_upload_songs
get_library_upload_artists
get_library_upload_albums
get_playlist
(+get_liked_songs
)
-
version
string sent with all requests updated to match the new format used by the web application:1.20220914.01.00
instead of0.1
(#296) -
pyproject.toml
is now used for the build process instead ofsetup.py
Fixes 🐞
search
: raise Exception when filter is set for uploads search (filtering uploads is not possible)get_home
: no longer breaks when radio/watch_playlist content is shown on the home page- localization: fixed error message when selecting a language that is not supported
v0.22.0
It is recommended to upgrade as soon as possible for users that are not using authenticated headers. This release fixes randomly failing requests due to the Consent page popping up sometimes.
Features ✨
get_song_related
: Get related content for a song, as seen in theRelated
tab in the watch panel.
Changes ⚒
get_watch_playlist
: Providerelated
browseId forget_song_related
search
: addedvideoType
key to indicate whether the song is an official music video (OMV) or other song (UGC) (#264, @lsmacedo )get_watch_playlist
: addedvideoType
key as above (#265, @lsmacedo )
Fixes 🐞
- Unauthenticated users only: Fixed randomly failing requests due to YouTube serving a Consent page instead of the actual content.
get_artist
: fixed an error for some channels (#267, thanks @jbbgameich)
v0.21.0
Features ✨
get_home
: You can now get the home page usingget_home
. This feature is a bit hard to test as the home page changes on every request based on various factors (time of day, popular content, etc.),. Please help out by testing it yourself and reporting any bugs you may find! (#251)
Fixes 🐞
get_album
: album and artist are now also set correctly on individual tracks, not just in the album metadata (#257)get_charts
: fixed a crash when unavailable songs where present in the "trending" sectionget_artist
: fixed an issue with videos some artists which would causeget_artists
to crash (7bc65ba)