From a8fa8bf4c084e70e55c1a51a415297ed7dab6189 Mon Sep 17 00:00:00 2001 From: tehkillerbee Date: Wed, 9 Jul 2025 23:16:49 +0200 Subject: [PATCH] Validate returned tracks and skip invalid results (Fixes: #327) Check for empty results --- tidalapi/session.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tidalapi/session.py b/tidalapi/session.py index 53363b98..32b07b7d 100644 --- a/tidalapi/session.py +++ b/tidalapi/session.py @@ -956,7 +956,13 @@ def get_tracks_by_isrc(self, isrc: str) -> list[media.Track]: base_url=self.config.openapi_v2_location, ).json() if res["data"]: - return [self.track(tr["id"]) for tr in res["data"]] + tracks = [] + for tr in res["data"]: + try: + tracks.append(self.track(tr["id"])) + except ObjectNotFound: + continue + return tracks else: log.warning("No matching tracks found for ISRC '%s'", isrc) raise ObjectNotFound