diff options
| author | Sergey M․ <dstftw@gmail.com> | 2015-07-10 00:25:36 +0600 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2015-07-10 00:25:36 +0600 | 
| commit | e6c2d9ad29bcc4eaa0eed03d3852588b6c7a10c0 (patch) | |
| tree | 0fdc20acb0b97a43d1d4155f4122bdd6e11d0164 | |
| parent | 83423254ccdf60cb8756aaf7900c929c1cf1a3ef (diff) | |
[extractor/generic:myvi] Add support for myvi embeds
| -rw-r--r-- | youtube_dl/extractor/generic.py | 6 | ||||
| -rw-r--r-- | youtube_dl/extractor/myvi.py | 9 | 
2 files changed, 15 insertions, 0 deletions
| diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py index ea60d4a96..f8d6a8c76 100644 --- a/youtube_dl/extractor/generic.py +++ b/youtube_dl/extractor/generic.py @@ -37,6 +37,7 @@ from .rutv import RUTVIE  from .tvc import TVCIE  from .sportbox import SportBoxEmbedIE  from .smotri import SmotriIE +from .myvi import MyviEmbedIE  from .condenast import CondeNastIE  from .udn import UDNEmbedIE  from .senateisvp import SenateISVPIE @@ -1425,6 +1426,11 @@ class GenericIE(InfoExtractor):          if smotri_url:              return self.url_result(smotri_url, 'Smotri') +        # Look for embedded Myvi.ru player +        myvi_url = MyviEmbedIE._extract_url(webpage) +        if myvi_url: +            return self.url_result(myvi_url) +          # Look for embeded soundcloud player          mobj = re.search(              r'<iframe\s+(?:[a-zA-Z0-9_-]+="[^"]+"\s+)*src="(?P<url>https?://(?:w\.)?soundcloud\.com/player[^"]+)"', diff --git a/youtube_dl/extractor/myvi.py b/youtube_dl/extractor/myvi.py index a14a5365b..896080c1e 100644 --- a/youtube_dl/extractor/myvi.py +++ b/youtube_dl/extractor/myvi.py @@ -1,6 +1,8 @@  # coding: utf-8  from __future__ import unicode_literals +import re +  from .vimple import SprutoBaseIE @@ -38,6 +40,13 @@ class MyviEmbedIE(SprutoBaseIE):          'only_matching': True,      }] +    @classmethod +    def _extract_url(cls, webpage): +        mobj = re.search( +            r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//myvi\.(?:ru/player|tv)/embed/html/[^"]+)\1', webpage) +        if mobj: +            return mobj.group('url') +      def _real_extract(self, url):          video_id = self._match_id(url) | 
