diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-08-01 06:53:25 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-08-02 01:08:16 +0530 |
commit | bfd973ece3369c593b5e82a88cc16de80088a73e (patch) | |
tree | 6a61140e44f412d16ece6794b5b3e4ead4905b3c /yt_dlp/extractor/videomore.py | |
parent | 1e8fe57e5cd0f33f940df87430d75e1230ec5b7a (diff) | |
download | hypervideo-pre-bfd973ece3369c593b5e82a88cc16de80088a73e.tar.lz hypervideo-pre-bfd973ece3369c593b5e82a88cc16de80088a73e.tar.xz hypervideo-pre-bfd973ece3369c593b5e82a88cc16de80088a73e.zip |
[extractors] Use new framework for existing embeds (#4307)
`Brightcove` is difficult to migrate because it's subclasses may depend
on the signature of the current functions. So it is left as-is for now
Note: Tests have not been migrated
Diffstat (limited to 'yt_dlp/extractor/videomore.py')
-rw-r--r-- | yt_dlp/extractor/videomore.py | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/yt_dlp/extractor/videomore.py b/yt_dlp/extractor/videomore.py index 09d12d192..2f81860bb 100644 --- a/yt_dlp/extractor/videomore.py +++ b/yt_dlp/extractor/videomore.py @@ -1,5 +1,3 @@ -import re - from .common import InfoExtractor from ..compat import ( compat_str, @@ -47,6 +45,12 @@ class VideomoreIE(InfoExtractor): (?P<id>\d+) (?:[/?#&]|\.(?:xml|json)|$) ''' + _EMBED_REGEX = [r'''(?x) + (?: + <iframe[^>]+src=([\'"])| + <object[^>]+data=(["\'])https?://videomore\.ru/player\.swf\?.*config= + )(?P<url>https?://videomore\.ru/[^?#"']+/\d+(?:\.xml)?) + '''] _TESTS = [{ 'url': 'http://videomore.ru/kino_v_detalayah/5_sezon/367617', 'md5': '44455a346edc0d509ac5b5a5b531dc35', @@ -126,19 +130,6 @@ class VideomoreIE(InfoExtractor): }] _GEO_BYPASS = False - @staticmethod - def _extract_url(webpage): - mobj = re.search( - r'<object[^>]+data=(["\'])https?://videomore\.ru/player\.swf\?.*config=(?P<url>https?://videomore\.ru/(?:[^/]+/)+\d+\.xml).*\1', - webpage) - if not mobj: - mobj = re.search( - r'<iframe[^>]+src=([\'"])(?P<url>https?://videomore\.ru/embed/\d+)', - webpage) - - if mobj: - return mobj.group('url') - def _real_extract(self, url): mobj = self._match_valid_url(url) video_id = mobj.group('sid') or mobj.group('id') |