From c72938240e8edd75296c1dbe262769e5002ce811 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Marqui=CC=81nez=20Ferra=CC=81ndiz?= Date: Sat, 20 Apr 2013 18:57:05 +0200 Subject: [PATCH] Get the title of Youtube playlists --- test/test_youtube_lists.py | 2 ++ youtube_dl/InfoExtractors.py | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/test/test_youtube_lists.py b/test/test_youtube_lists.py index c5b22a5c4..c7f00af32 100644 --- a/test/test_youtube_lists.py +++ b/test/test_youtube_lists.py @@ -45,6 +45,7 @@ class TestYoutubeLists(unittest.TestCase): ie = YoutubePlaylistIE(dl) result = ie.extract('https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re')[0] self.assertIsPlaylist(result) + self.assertEqual(result['title'], 'ytdl test PL') ytie_results = [YoutubeIE()._extract_id(url['url']) for url in result['entries']] self.assertEqual(ytie_results, [ 'bV9L5Ht9LgY', 'FXxLjLQi3Fg', 'tU3Bgo5qJZE']) @@ -52,6 +53,7 @@ class TestYoutubeLists(unittest.TestCase): dl = FakeDownloader() ie = YoutubePlaylistIE(dl) result = ie.extract('PLBB231211A4F62143')[0] + self.assertEqual(result['title'], 'Team Fortress 2') self.assertTrue(len(result['entries']) > 40) def test_youtube_playlist_long(self): diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py index b20e6b46d..c50052a73 100755 --- a/youtube_dl/InfoExtractors.py +++ b/youtube_dl/InfoExtractors.py @@ -1801,6 +1801,8 @@ class YoutubePlaylistIE(InfoExtractor): # Number of videos is a multiple of self._MAX_RESULTS break + playlist_title = response['feed']['title']['$t'] + videos += [ (entry['yt$position']['$t'], entry['content']['src']) for entry in response['feed']['entry'] if 'content' in entry ] @@ -1812,7 +1814,7 @@ class YoutubePlaylistIE(InfoExtractor): videos = [v[1] for v in sorted(videos)] url_results = [self.url_result(url, 'Youtube') for url in videos] - return [self.playlist_result(url_results, playlist_id)] + return [self.playlist_result(url_results, playlist_id, playlist_title)] class YoutubeChannelIE(InfoExtractor):