From 13701c40b764979a77eca7890134029fb5673418 Mon Sep 17 00:00:00 2001 From: Sean Reifschneider Date: Fri, 1 Mar 2024 12:54:55 -0700 Subject: [PATCH] nav() now displays some debugging information on KeyError (#540) --- ytmusicapi/navigation.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ytmusicapi/navigation.py b/ytmusicapi/navigation.py index 75fb0106..78d4e166 100644 --- a/ytmusicapi/navigation.py +++ b/ytmusicapi/navigation.py @@ -96,12 +96,11 @@ def nav(root: Dict, items: List[Any], none_if_absent: bool = False) -> Optional[ try: for k in items: root = root[k] - return root - except Exception as err: + except (KeyError, IndexError, TypeError) as e: if none_if_absent: return None - else: - raise err + raise type(e)(f"Unable to find '{k}' using path {items!r} on {root!r}, exception: {e}") + return root def find_object_by_key(object_list, key, nested=None, is_key=False):