aboutsummaryrefslogtreecommitdiffstats
path: root/hypervideo_dl/extractor/rutube.py
diff options
context:
space:
mode:
Diffstat (limited to 'hypervideo_dl/extractor/rutube.py')
-rw-r--r--hypervideo_dl/extractor/rutube.py21
1 files changed, 18 insertions, 3 deletions
diff --git a/hypervideo_dl/extractor/rutube.py b/hypervideo_dl/extractor/rutube.py
index d027412..2f753b4 100644
--- a/hypervideo_dl/extractor/rutube.py
+++ b/hypervideo_dl/extractor/rutube.py
@@ -230,9 +230,9 @@ class RutubePlaylistBaseIE(RutubeBaseIE):
return self._extract_playlist(self._match_id(url))
-class RutubeChannelIE(RutubePlaylistBaseIE):
- IE_NAME = 'rutube:channel'
- IE_DESC = 'Rutube channels'
+class RutubeTagsIE(RutubePlaylistBaseIE):
+ IE_NAME = 'rutube:tags'
+ IE_DESC = 'Rutube tags'
_VALID_URL = r'https?://rutube\.ru/tags/video/(?P<id>\d+)'
_TESTS = [{
'url': 'http://rutube.ru/tags/video/1800/',
@@ -312,3 +312,18 @@ class RutubePlaylistIE(RutubePlaylistBaseIE):
playlist_kind = qs['pl_type'][0]
playlist_id = qs['pl_id'][0]
return self._extract_playlist(playlist_id, item_kind=playlist_kind)
+
+
+class RutubeChannelIE(RutubePlaylistBaseIE):
+ IE_NAME = 'rutube:channel'
+ IE_DESC = 'Rutube channel'
+ _VALID_URL = r'https?://rutube\.ru/channel/(?P<id>\d+)/videos'
+ _TESTS = [{
+ 'url': 'https://rutube.ru/channel/639184/videos/',
+ 'info_dict': {
+ 'id': '639184',
+ },
+ 'playlist_mincount': 133,
+ }]
+
+ _PAGE_TEMPLATE = 'http://rutube.ru/api/video/person/%s/?page=%s&format=json'