diff options
| author | Sergey M․ <dstftw@gmail.com> | 2016-11-06 21:42:41 +0700 | 
|---|---|---|
| committer | Sergey M․ <dstftw@gmail.com> | 2016-11-06 21:42:41 +0700 | 
| commit | e28ed498e64545f02f2d3dbccf97ecf0e47aa82a (patch) | |
| tree | fdafc819c2408015e5bd19042feae8469196df05 | |
| parent | 5021ca6c13e3d011dc24ecf38d326e3a59e726a1 (diff) | |
[extractor/generic] Add support for redtube embds (closes #11099)
| -rw-r--r-- | youtube_dl/extractor/generic.py | 6 | ||||
| -rw-r--r-- | youtube_dl/extractor/redtube.py | 8 | 
2 files changed, 14 insertions, 0 deletions
| diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py index 5c2782754..b1315a9c8 100644 --- a/youtube_dl/extractor/generic.py +++ b/youtube_dl/extractor/generic.py @@ -48,6 +48,7 @@ from .pornhub import PornHubIE  from .xhamster import XHamsterEmbedIE  from .tnaflix import TNAFlixNetworkEmbedIE  from .drtuber import DrTuberIE +from .redtube import RedTubeIE  from .vimeo import VimeoIE  from .dailymotion import (      DailymotionIE, @@ -2002,6 +2003,11 @@ class GenericIE(InfoExtractor):          if drtuber_urls:              return _playlist_from_matches(drtuber_urls, ie=DrTuberIE.ie_key()) +        # Look for embedded RedTube player +        redtube_urls = RedTubeIE._extract_urls(webpage) +        if redtube_urls: +            return _playlist_from_matches(redtube_urls, ie=RedTubeIE.ie_key()) +          # Look for embedded Tvigle player          mobj = re.search(              r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//cloud\.tvigle\.ru/video/.+?)\1', webpage) diff --git a/youtube_dl/extractor/redtube.py b/youtube_dl/extractor/redtube.py index 7d9285ffb..c367a6ae7 100644 --- a/youtube_dl/extractor/redtube.py +++ b/youtube_dl/extractor/redtube.py @@ -1,5 +1,7 @@  from __future__ import unicode_literals +import re +  from .common import InfoExtractor  from ..utils import (      ExtractorError, @@ -28,6 +30,12 @@ class RedTubeIE(InfoExtractor):          'only_matching': True,      }] +    @staticmethod +    def _extract_urls(webpage): +        return re.findall( +            r'<iframe[^>]+?src=["\'](?P<url>(?:https?:)?//embed\.redtube\.com/\?.*?\bid=\d+)', +            webpage) +      def _real_extract(self, url):          video_id = self._match_id(url)          webpage = self._download_webpage( | 
