[kanalplay] Remove Extractor
authorRemita Amine <remitamine@gmail.com>
Sun, 20 Dec 2020 11:05:48 +0000 (12:05 +0100)
committerRemita Amine <remitamine@gmail.com>
Sun, 20 Dec 2020 11:06:17 +0000 (12:06 +0100)
youtube_dl/extractor/extractors.py
youtube_dl/extractor/kanalplay.py [deleted file]

index c44746e57dd6bc99643d9e5b15a867b7e99f81cb..d32e9bb0fdb61df6c3c63c0de2bd8e71f002d4eb 100644 (file)
@@ -501,7 +501,6 @@ from .joj import JojIE
 from .jwplatform import JWPlatformIE
 from .kakao import KakaoIE
 from .kaltura import KalturaIE
-from .kanalplay import KanalPlayIE
 from .kankan import KankanIE
 from .karaoketv import KaraoketvIE
 from .karrierevideos import KarriereVideosIE
diff --git a/youtube_dl/extractor/kanalplay.py b/youtube_dl/extractor/kanalplay.py
deleted file mode 100644 (file)
index 6c3498c..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-# coding: utf-8
-from __future__ import unicode_literals
-
-import re
-
-from .common import InfoExtractor
-from ..utils import (
-    ExtractorError,
-    float_or_none,
-    srt_subtitles_timecode,
-)
-
-
-class KanalPlayIE(InfoExtractor):
-    IE_DESC = 'Kanal 5/9/11 Play'
-    _VALID_URL = r'https?://(?:www\.)?kanal(?P<channel_id>5|9|11)play\.se/(?:#!/)?(?:play/)?program/\d+/video/(?P<id>\d+)'
-    _TESTS = [{
-        'url': 'http://www.kanal5play.se/#!/play/program/3060212363/video/3270012277',
-        'info_dict': {
-            'id': '3270012277',
-            'ext': 'flv',
-            'title': 'Saknar både dusch och avlopp',
-            'description': 'md5:6023a95832a06059832ae93bc3c7efb7',
-            'duration': 2636.36,
-        },
-        'params': {
-            # rtmp download
-            'skip_download': True,
-        }
-    }, {
-        'url': 'http://www.kanal9play.se/#!/play/program/335032/video/246042',
-        'only_matching': True,
-    }, {
-        'url': 'http://www.kanal11play.se/#!/play/program/232835958/video/367135199',
-        'only_matching': True,
-    }]
-
-    def _fix_subtitles(self, subs):
-        return '\r\n\r\n'.join(
-            '%s\r\n%s --> %s\r\n%s'
-            % (
-                num,
-                srt_subtitles_timecode(item['startMillis'] / 1000.0),
-                srt_subtitles_timecode(item['endMillis'] / 1000.0),
-                item['text'],
-            ) for num, item in enumerate(subs, 1))
-
-    def _get_subtitles(self, channel_id, video_id):
-        subs = self._download_json(
-            'http://www.kanal%splay.se/api/subtitles/%s' % (channel_id, video_id),
-            video_id, 'Downloading subtitles JSON', fatal=False)
-        return {'sv': [{'ext': 'srt', 'data': self._fix_subtitles(subs)}]} if subs else {}
-
-    def _real_extract(self, url):
-        mobj = re.match(self._VALID_URL, url)
-        video_id = mobj.group('id')
-        channel_id = mobj.group('channel_id')
-
-        video = self._download_json(
-            'http://www.kanal%splay.se/api/getVideo?format=FLASH&videoId=%s' % (channel_id, video_id),
-            video_id)
-
-        reasons_for_no_streams = video.get('reasonsForNoStreams')
-        if reasons_for_no_streams:
-            raise ExtractorError(
-                '%s returned error: %s' % (self.IE_NAME, '\n'.join(reasons_for_no_streams)),
-                expected=True)
-
-        title = video['title']
-        description = video.get('description')
-        duration = float_or_none(video.get('length'), 1000)
-        thumbnail = video.get('posterUrl')
-
-        stream_base_url = video['streamBaseUrl']
-
-        formats = [{
-            'url': stream_base_url,
-            'play_path': stream['source'],
-            'ext': 'flv',
-            'tbr': float_or_none(stream.get('bitrate'), 1000),
-            'rtmp_real_time': True,
-        } for stream in video['streams']]
-        self._sort_formats(formats)
-
-        subtitles = {}
-        if video.get('hasSubtitle'):
-            subtitles = self.extract_subtitles(channel_id, video_id)
-
-        return {
-            'id': video_id,
-            'title': title,
-            'description': description,
-            'thumbnail': thumbnail,
-            'duration': duration,
-            'formats': formats,
-            'subtitles': subtitles,
-        }