From 1050e0d09f02209cc5c6f45da46c2b79f73d96f4 Mon Sep 17 00:00:00 2001 From: Felix Yan Date: Sun, 18 Oct 2020 00:02:17 +0800 Subject: [PATCH 1/3] [iqiyi] Fix typo (#26884) --- youtube_dl/extractor/iqiyi.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/iqiyi.py b/youtube_dl/extractor/iqiyi.py index cd11aa70f..5df674daf 100644 --- a/youtube_dl/extractor/iqiyi.py +++ b/youtube_dl/extractor/iqiyi.py @@ -150,7 +150,7 @@ class IqiyiSDKInterpreter(object): elif function in other_functions: other_functions[function]() else: - raise ExtractorError('Unknown funcion %s' % function) + raise ExtractorError('Unknown function %s' % function) return sdk.target From 605535776a8d5beba78b4d1b057d5206ddd969eb Mon Sep 17 00:00:00 2001 From: Sergio Livi Date: Sat, 17 Oct 2020 18:14:46 +0200 Subject: [PATCH 2/3] [ustream] Add support for video.ibm.com (#26894) --- youtube_dl/extractor/ustream.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/youtube_dl/extractor/ustream.py b/youtube_dl/extractor/ustream.py index 582090d0d..9e860aeb7 100644 --- a/youtube_dl/extractor/ustream.py +++ b/youtube_dl/extractor/ustream.py @@ -19,7 +19,7 @@ from ..utils import ( class UstreamIE(InfoExtractor): - _VALID_URL = r'https?://(?:www\.)?ustream\.tv/(?Precorded|embed|embed/recorded)/(?P\d+)' + _VALID_URL = r'https?://(?:www\.)?(?:ustream\.tv|video\.ibm\.com)/(?Precorded|embed|embed/recorded)/(?P\d+)' IE_NAME = 'ustream' _TESTS = [{ 'url': 'http://www.ustream.tv/recorded/20274954', @@ -67,12 +67,15 @@ class UstreamIE(InfoExtractor): 'params': { 'skip_download': True, # m3u8 download }, + }, { + 'url': 'https://video.ibm.com/embed/recorded/128240221?&autoplay=true&controls=true&volume=100', + 'only_matching': True, }] @staticmethod def _extract_url(webpage): mobj = re.search( - r']+?src=(["\'])(?Phttp://www\.ustream\.tv/embed/.+?)\1', webpage) + r']+?src=(["\'])(?Phttp://(?:www\.)?(?:ustream\.tv|video\.ibm\.com)/embed/.+?)\1', webpage) if mobj is not None: return mobj.group('url') From 5e0ea2c703cc323361c6197d9bf151b36a4b9c8d Mon Sep 17 00:00:00 2001 From: Sergio Livi Date: Thu, 8 Oct 2020 10:42:07 +0200 Subject: [PATCH 3/3] [bigmarker] Add new extractor --- youtube_dl/extractor/bigmarker.py | 30 ++++++++++++++++++++++++++++++ youtube_dl/extractor/extractors.py | 1 + 2 files changed, 31 insertions(+) create mode 100644 youtube_dl/extractor/bigmarker.py diff --git a/youtube_dl/extractor/bigmarker.py b/youtube_dl/extractor/bigmarker.py new file mode 100644 index 000000000..d1adf1879 --- /dev/null +++ b/youtube_dl/extractor/bigmarker.py @@ -0,0 +1,30 @@ +# coding: utf-8 +from __future__ import unicode_literals + +from .common import InfoExtractor + + +class BigMarkerIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?bigmarker\.com/recordings/(?P[a-z0-9]+)' + _TEST = { + 'url': 'https://www.bigmarker.com/recordings/478333acea6e', + 'md5': '8efb9380119651972481f6974e0c8c06', + 'info_dict': { + 'id': '478333acea6e', + 'ext': 'mp4', + 'title': '478333acea6e', + 'url': 'https://d5ln38p3754yc.cloudfront.net/F508IZuncdvJ37XKHei8/32165f6e-4fae-4262-9f16-aa7f53142305.mp4?1602110695315', + 'author': 'Pulumi', + } + } + + def _real_extract(self, url): + video_id = self._match_id(url) + webpage = self._download_webpage(url, video_id) + + return { + 'id': video_id, + 'title': video_id, + 'author': self._search_regex(r'qaClubName:\s*(["\'])(?P.+)\1', webpage, 'author', group='clubName', default=None), + 'url': self._search_regex(r'mp4Url:\s*(["\'])(?Phttp.+)\1', webpage, 'url', group='url'), + } diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index ae7079a6a..125e2f7ec 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -99,6 +99,7 @@ from .beatport import BeatportIE from .bet import BetIE from .bfi import BFIPlayerIE from .bigflix import BigflixIE +from .bigmarker import BigMarkerIE from .bild import BildIE from .bilibili import ( BiliBiliIE,