From 36bd87499480498e95e322127e91d21e2c5a0303 Mon Sep 17 00:00:00 2001 From: Farzin Kazemzadeh Date: Fri, 14 Nov 2025 08:53:56 +0330 Subject: [PATCH] Include all artists in Deezer Signed-off-by: Farzin Kazemzadeh --- streamrip/metadata/album.py | 4 +++- streamrip/metadata/track.py | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/streamrip/metadata/album.py b/streamrip/metadata/album.py index aca2500e..7d32d205 100644 --- a/streamrip/metadata/album.py +++ b/streamrip/metadata/album.py @@ -169,7 +169,9 @@ def from_deezer(cls, resp: dict) -> AlbumMetadata | None: year = date[:4] _copyright = None description = None - albumartist = typed(safe_get(resp, "artist", "name"), str) + albumartist = ", ".join( + c["name"] for c in resp["contributors"] if c["type"] == "artist" + ) albumcomposer = None label = resp.get("label") booklets = None diff --git a/streamrip/metadata/track.py b/streamrip/metadata/track.py index d25b31b3..2902b136 100644 --- a/streamrip/metadata/track.py +++ b/streamrip/metadata/track.py @@ -95,7 +95,9 @@ def from_deezer(cls, album: AlbumMetadata, resp) -> TrackMetadata | None: explicit = typed(resp["explicit_lyrics"], bool) work = None title = typed(resp["title"], str) - artist = typed(resp["artist"]["name"], str) + artist = ", ".join( + c["name"] for c in resp["contributors"] if c["type"] == "artist" + ) tracknumber = typed(resp["track_position"], int) discnumber = typed(resp["disk_number"], int) composer = None