youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit c72938240e8edd75296c1dbe262769e5002ce811
parent e905b6f80ef276900160af87c89644d95f669d9c
Author: Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com>
Date:   Sat, 20 Apr 2013 18:57:05 +0200

Get the title of Youtube playlists

Diffstat:
Mtest/test_youtube_lists.py | 2++
Myoutube_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 @@ -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 @@ -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):