From 9aeb231113cd4e3ab1645f259acddc0cbc4e62f8 Mon Sep 17 00:00:00 2001 From: fourjr <28086837+fourjr@users.noreply.github.com> Date: Sat, 21 Nov 2020 23:01:32 +0800 Subject: [PATCH] [ChannelNewsAsia] Add new extractor --- youtube_dl/extractor/channelnewsasia.py | 44 +++++++++++++++++++++++++ youtube_dl/extractor/extractors.py | 1 + 2 files changed, 45 insertions(+) create mode 100644 youtube_dl/extractor/channelnewsasia.py diff --git a/youtube_dl/extractor/channelnewsasia.py b/youtube_dl/extractor/channelnewsasia.py new file mode 100644 index 000000000..654e537d6 --- /dev/null +++ b/youtube_dl/extractor/channelnewsasia.py @@ -0,0 +1,44 @@ +# coding: utf-8 +from __future__ import unicode_literals +import re + +from .common import InfoExtractor + + +class ChannelNewsAsiaIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?channelnewsasia\.com/(?:(?:-|\w|\d)+)/(?:(?:-|\w|\d)+)/(?P(?:-|\w|\d)+)' + _TESTS = [ + { + 'url': 'https://www.channelnewsasia.com/news/video-on-demand/wizards-of-tech', + 'md5': 'a8ba47ac856fccb6213c74f1d82eeb3d', + 'info_dict': { + 'id': '9ldHdzajE6gEsQce6-K8eVvYNSAgY3fg', + 'ext': 'mp4', + 'title': 'Home', + 'description': 'md5:03740111008a32416327f07dbbc5526c', + }, + }, + { + 'url': 'https://www.channelnewsasia.com/news/asia/removing-the-negative-influences-of-religion-in-tibet-video-13604084', + 'md5': 'ed846cfca037823fa6d3d0d7af8a4e8f', + 'info_dict': { + 'id': 'ljZjd0ajE6NNMhVJ3Gb-QfL1l0p-qW6-', + 'ext': 'mp4', + 'title': "Removing the 'negative influences of religion' in Tibet | Video", + 'description': 'md5:777989926133319de6f6501372175fbf', + }, + } + ] + + def _real_extract(self, url): + display_id = self._match_id(url) + + webpage = self._download_webpage(url, display_id) + url_obj = ( + re.search(r'(?:\d|\w|-)+)".*', webpage, flags=re.DOTALL) + ) + + ooyala_id = url_obj.group('id') + return self.url_result( + 'ooyala:' + ooyala_id, 'Ooyala', ooyala_id + ) diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index 5691c4cba..0e98f4743 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -184,6 +184,7 @@ from .ceskatelevize import ( CeskaTelevizePoradyIE, ) from .channel9 import Channel9IE +from .channelnewsasia import ChannelNewsAsiaIE from .charlierose import CharlieRoseIE from .chaturbate import ChaturbateIE from .chilloutzone import ChilloutzoneIE