]> jfr.im git - yt-dlp.git/commitdiff
[youtube] Extract playlist description
authorpukkandan <redacted>
Thu, 28 Jan 2021 19:01:50 +0000 (00:31 +0530)
committerpukkandan <redacted>
Thu, 28 Jan 2021 19:01:50 +0000 (00:31 +0530)
youtube_dlc/extractor/youtube.py

index e5e36075e6befa51bb158ed3ed48016c7fc4221d..f9e60f03ef42b430b78f4d9eb70e968900690939 100644 (file)
@@ -3426,12 +3426,19 @@ def _extract_from_tabs(self, item_id, webpage, data, tabs, identity_token):
                 title += ' - %s' % tab_title
             description = renderer.get('description')
             playlist_id = renderer.get('externalId')
+
+        # this has thumbnails, but there is currently no thumbnail field for playlists
+        # sidebar.playlistSidebarRenderer has even more data, but its stucture is more complec
         renderer = try_get(
-            data, lambda x: x['metadata']['playlistMetadataRenderer'], dict)
+            data, lambda x: x['microformat']['microformatDataRenderer'], dict)
+        if not renderer:
+            renderer = try_get(
+                data, lambda x: x['metadata']['playlistMetadataRenderer'], dict)
         if renderer:
             title = renderer.get('title')
-            description = None
+            description = renderer.get('description')
             playlist_id = item_id
+
         if playlist_id is None:
             playlist_id = item_id
         if title is None: