X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;ds=sidebyside;f=youtube_dl%2Fextractor%2Fmyvi.py;h=4c65be122fd536c6e39fd9f10052e8933e96417d;hb=88641243abfdc5673359269574bf7c76191966bc;hp=a14a5365b4889792651d8f45503491e76ec2971d;hpb=83423254ccdf60cb8756aaf7900c929c1cf1a3ef;p=youtube-dl diff --git a/youtube_dl/extractor/myvi.py b/youtube_dl/extractor/myvi.py index a14a5365b..4c65be122 100644 --- a/youtube_dl/extractor/myvi.py +++ b/youtube_dl/extractor/myvi.py @@ -1,21 +1,24 @@ # coding: utf-8 from __future__ import unicode_literals +import re + from .vimple import SprutoBaseIE -class MyviEmbedIE(SprutoBaseIE): +class MyviIE(SprutoBaseIE): _VALID_URL = r'''(?x) https?:// myvi\.(?:ru/player|tv)/ (?: (?: embed/html| + flash| api/Video/Get )/| content/preloader\.swf\?.*\bid= ) - (?P[\da-zA-Z_]+) + (?P[\da-zA-Z_-]+) ''' _TESTS = [{ 'url': 'http://myvi.ru/player/embed/html/oOy4euHA6LVwNNAjhD9_Jq5Ha2Qf0rtVMVFMAZav8wObeRTZaCATzucDQIDph8hQU0', @@ -36,8 +39,18 @@ class MyviEmbedIE(SprutoBaseIE): }, { 'url': 'http://myvi.tv/embed/html/oTGTNWdyz4Zwy_u1nraolwZ1odenTd9WkTnRfIL9y8VOgHYqOHApE575x4_xxS9Vn0?ap=0', 'only_matching': True, + }, { + 'url': 'http://myvi.ru/player/flash/ocp2qZrHI-eZnHKQBK4cZV60hslH8LALnk0uBfKsB-Q4WnY26SeGoYPi8HWHxu0O30', + 'only_matching': True, }] + @classmethod + def _extract_url(cls, webpage): + mobj = re.search( + r']+?src=(["\'])(?P(?:https?:)?//myvi\.(?:ru/player|tv)/(?:embed/html|flash)/[^"]+)\1', webpage) + if mobj: + return mobj.group('url') + def _real_extract(self, url): video_id = self._match_id(url)