def _get_library_artists():
ytm = ytmusicapi.YTMusic(auth=json.dumps(headers))
- artists = ytm.get_library_artists()
+ artists = ytm.get_library_artists(limit=999)
# Sync properties with uniformal artist object
for artist in artists:
artist["id"] = artist["browseId"]
def _get_library_albums():
ytm = ytmusicapi.YTMusic(auth=json.dumps(headers))
- return ytm.get_library_albums()
+ return ytm.get_library_albums(limit=999)
loop = asyncio.get_running_loop()
return await loop.run_in_executor(None, _get_library_albums)
def _get_library_playlists():
ytm = ytmusicapi.YTMusic(auth=json.dumps(headers))
- playlists = ytm.get_library_playlists()
+ playlists = ytm.get_library_playlists(limit=999)
# Sync properties with uniformal playlist object
for playlist in playlists:
playlist["id"] = playlist["playlistId"]
def _get_library_tracks():
ytm = ytmusicapi.YTMusic(auth=json.dumps(headers))
- tracks = ytm.get_library_songs()
+ tracks = ytm.get_library_songs(limit=999)
return tracks
loop = asyncio.get_running_loop()
"""Get a list of albums for the given artist."""
artist_obj = await get_artist(prov_artist_id=prov_artist_id)
if "albums" in artist_obj and "results" in artist_obj["albums"]:
- return [
- await self._parse_album(album, album["browseId"])
- for album in artist_obj["albums"]["results"]
- ]
+ albums = []
+ for album_obj in artist_obj["albums"]["results"]:
+ if "artists" not in album_obj:
+ album_obj["artists"] = [
+ {"id": artist_obj["channelId"], "name": artist_obj["name"]}
+ ]
+ albums.append(await self._parse_album(album_obj, album_obj["browseId"]))
+ return albums
return []
async def get_artist_toptracks(self, prov_artist_id) -> List[Track]: