Ytmusicapi

Latest version: v1.8.2

Safety actively analyzes 681844 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 9 of 14

0.16.0

Features ✨
---------
- `get_album_browse_id`: get an album's `browseId` based on it's `audioPlaylistId` (`OLAK...`). This is based on the redirect that happens when you open a link in YouTube Music with an `audioPlaylistId`

Changes βš’
-----------
- **BREAKING** `get_album` endpoint has changed for some users due to an ongoing YouTube beta (173). With this release, `get_album` will always work, but the format of the data might look different from the documentation if you have the update. Please check if this applies to your account. The documentation will be updated for the new format once the beta is released to all users. For reference, an example of the new format is provided below. A big thanks to jake-g for providing access to his account to test this update ahead of time.

Fixes 🐞
---------
- `search`: fixed a crash if the playlist author was missing for a playlist
- `search`: for songs with artists without browseId, these artists are now also returned in the result. This also applies to `get_watch_playlist`
- `get_artist_albums`: fixed an exception for singles missing a release year (188, thanks grray )
- `get_artist`: fix crash if related artist is missing subscriber number
- fixed `feedbackTokens`, which were incorrectly `None` when a song was already in the library. Now the correct tokens are returned regardless of the current library status


***************
**New `get_album` format**


json
{
"title": "Revival",
"type": "Album",
"thumbnails": [
{
"url": "https://lh3.googleusercontent.com/b-euORTq-_MSzc3SyI0QOjLqnCBJbWuMmH1YlyJKAVvJfOpPqv3bFH-KSDoQwV9e8Xey1X2NRo9xZ2U=w60-h60-l90-rj",
"width": 60,
"height": 60
}
],
"description": "Revival is the ninth studio ...",
"artists": [
{
"name": "Eminem",
"id": "UCedvOgsKFzcK3hA5taf3KoQ"
}
],
"year": "2017",
"trackCount": 19,
"duration": "1 hour, 17 minutes",
"audioPlaylistId": "OLAK5uy_nMr9h2VlS-2PULNz3M3XVXQj_P3C2bqaY",
"tracks": [
{
"videoId": "iKLU7z_xdYQ",
"title": "Walk On Water (feat. BeyoncΓ©)",
"artists": [
{
"name": "Eminem",
"id": "UCedvOgsKFzcK3hA5taf3KoQ"
}
],
"album": null,
"likeStatus": "INDIFFERENT",
"thumbnails": null,
"isAvailable": true,
"isExplicit": true,
"duration": "5:03",
"feedbackTokens": {
"add": "AB9zfpJC...",
"remove": "AB9zfpJT..."
}
}
]
}

0.15.1

Fixes 🐞
---------
- `search`: fixed a crash if a playlist is missing the author

0.15.0

Features ✨
---------
- added related artist section to `get_artist` (thanks mikefreemanwd )


Changes βš’
---------
- `get_watch_playlist`: also accepts playlist browse ids as parameter (starting with "VLPL")
- **BREAKING** `get_watch_playlist`: associated radio playlist is now at the top level of the dictionary as it is the same for every video in the list
- `get_artist`: `ValueError` is now returned if the provided channel Id has no music content (thanks mikefreemanwd )

Note: `get_album` may be broken right now for some users due to ongoing testing of a data structure on YouTube's side. A fix is currently being worked on and will be release when the change is live for all users (173).

0.14.3

Fixes 🐞
---------
- `search` results for songs and albums are more consistent and has default value `None` for year and album if they are missing
- added optional `videoId` parameter to `get_watch_playlist_shuffle`

0.14.2

Fixes 🐞
---------
- `get_artist` no longer crashes for artists with missing shuffle/radio mix
- `get_library_albums`, `get_library_artists`, `get_library_artists`, `get_library_playlists` correctly return continuations again (was broken temporarily in 0.14.0 and 0.14.1)

0.14.1

Fixes 🐞
---------
- search parsing was overhauled for song/video results. It should be more reliable and crash less often. If you find any problem or missing information, please open an issue
- search correctly parses `station` results. These usually appear when your search includes the term "mix"
- locale is now correctly set when a language is provided on initialization. This should prevent crashes when using get_playlist with a different language

Page 9 of 14

Β© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.