From: Philipp Hagemeister Date: Sun, 24 Aug 2014 05:02:29 +0000 (+0200) Subject: Merge remote-tracking branch 'olebowle/gameone' X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=commitdiff_plain;h=11f75cac3db14681b306633a496e9aaae2cfc0a7;hp=e673db0194a40b0904c2196426a1ec2cbc030945;p=youtube-dl Merge remote-tracking branch 'olebowle/gameone' --- diff --git a/test/test_playlists.py b/test/test_playlists.py index 6448fea38..0691ff110 100644 --- a/test/test_playlists.py +++ b/test/test_playlists.py @@ -62,6 +62,7 @@ from youtube_dl.extractor import ( InstagramUserIE, CSpanIE, AolIE, + GameOnePlaylistIE, ) @@ -407,5 +408,13 @@ class TestPlaylists(unittest.TestCase): self.assertEqual(result['id'], 'rbhagwati2') assertGreaterEqual(self, len(result['entries']), 179) + def test_GameOne_playlist(self): + dl = FakeYDL() + ie = GameOnePlaylistIE(dl) + result = ie.extract('http://www.gameone.de/tv') + self.assertIsPlaylist(result) + self.assertEqual(result['title'], 'GameOne') + assertGreaterEqual(self, len(result['entries']), 294) + if __name__ == '__main__': unittest.main() diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 0203d9d63..de6e8ee30 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -116,7 +116,10 @@ from .freesound import FreesoundIE from .freespeech import FreespeechIE from .funnyordie import FunnyOrDieIE from .gamekings import GamekingsIE -from .gameone import GameOneIE +from .gameone import ( + GameOneIE, + GameOnePlaylistIE, +) from .gamespot import GameSpotIE from .gamestar import GameStarIE from .gametrailers import GametrailersIE diff --git a/youtube_dl/extractor/gameone.py b/youtube_dl/extractor/gameone.py index b580f52fb..12f757329 100644 --- a/youtube_dl/extractor/gameone.py +++ b/youtube_dl/extractor/gameone.py @@ -88,3 +88,17 @@ class GameOneIE(InfoExtractor): 'age_limit': age_limit, 'timestamp': timestamp, } + +class GameOnePlaylistIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?gameone\.de(?:/tv)?/?$' + + def _real_extract(self, url): + webpage = self._download_webpage('http://www.gameone.de/tv', 'TV') + max_id = max(map(int, re.findall(r'