Browse Source

Merge remote-tracking branch 'olebowle/gameone'

totalwebcasting
Philipp Hagemeister 10 years ago
parent
commit
11f75cac3d
3 changed files with 27 additions and 1 deletions
  1. +9
    -0
      test/test_playlists.py
  2. +4
    -1
      youtube_dl/extractor/__init__.py
  3. +14
    -0
      youtube_dl/extractor/gameone.py

+ 9
- 0
test/test_playlists.py View File

@ -62,6 +62,7 @@ from youtube_dl.extractor import (
InstagramUserIE, InstagramUserIE,
CSpanIE, CSpanIE,
AolIE, AolIE,
GameOnePlaylistIE,
) )
@ -407,5 +408,13 @@ class TestPlaylists(unittest.TestCase):
self.assertEqual(result['id'], 'rbhagwati2') self.assertEqual(result['id'], 'rbhagwati2')
assertGreaterEqual(self, len(result['entries']), 179) 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__': if __name__ == '__main__':
unittest.main() unittest.main()

+ 4
- 1
youtube_dl/extractor/__init__.py View File

@ -116,7 +116,10 @@ from .freesound import FreesoundIE
from .freespeech import FreespeechIE from .freespeech import FreespeechIE
from .funnyordie import FunnyOrDieIE from .funnyordie import FunnyOrDieIE
from .gamekings import GamekingsIE from .gamekings import GamekingsIE
from .gameone import GameOneIE
from .gameone import (
GameOneIE,
GameOnePlaylistIE,
)
from .gamespot import GameSpotIE from .gamespot import GameSpotIE
from .gamestar import GameStarIE from .gamestar import GameStarIE
from .gametrailers import GametrailersIE from .gametrailers import GametrailersIE


+ 14
- 0
youtube_dl/extractor/gameone.py View File

@ -88,3 +88,17 @@ class GameOneIE(InfoExtractor):
'age_limit': age_limit, 'age_limit': age_limit,
'timestamp': timestamp, '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'<a href="/tv/(\d+)"', webpage)))
entries = [self.url_result('http://www.gameone.de/tv/%d' % video_id, 'GameOne') for video_id in range(max_id, 0, -1)]
return {
'_type': 'playlist',
'title': 'GameOne',
'entries': entries,
}

Loading…
Cancel
Save