From 00100bf1d63fcc4895f81aefbe8d79784f908330 Mon Sep 17 00:00:00 2001 From: Tilman Sauerbeck Date: Sat, 12 Aug 2017 12:58:15 +0200 Subject: [PATCH] Simplify NetflixSession.parse_genres_for_video(). This method resolves genre references (IDs) to genre names. Before this change, we would iterate the list of genre (names) and then iterate the list of genre IDs to look for matches. The same result can be established more efficiently by iterating the genre references followed by lookups for their associated names. Error handling for lookup failures has been left intact from the original implementation. --- resources/lib/NetflixSession.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/resources/lib/NetflixSession.py b/resources/lib/NetflixSession.py index a4c4874..62e58fd 100644 --- a/resources/lib/NetflixSession.py +++ b/resources/lib/NetflixSession.py @@ -895,12 +895,14 @@ class NetflixSession: List of genres """ video_genres = [] - for genre_key in dict(genres).keys(): - if self._is_size_key(key=genre_key) == False and genre_key != 'summary': - for show_genre_key in dict(video['genres']).keys(): - if self._is_size_key(key=show_genre_key) == False and show_genre_key != 'summary': - if video['genres'][show_genre_key][1] == genre_key: - video_genres.append(genres[genre_key]['name']) + + for video_genre_key, video_genre in video['genres'].iteritems(): + if self._is_size_key(video_genre_key) == False and video_genre_key != 'summary': + name = genres.get(video_genre[1], {}).get('name') + + if name: + video_genres.append(name) + return video_genres def parse_tags_for_video (self, video): -- 2.30.2