youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit e28ed498e64545f02f2d3dbccf97ecf0e47aa82a
parent 5021ca6c13e3d011dc24ecf38d326e3a59e726a1
Author: Sergey M․ <dstftw@gmail.com>
Date:   Sun,  6 Nov 2016 21:42:41 +0700

[extractor/generic] Add support for redtube embds (closes #11099)

Diffstat:
Myoutube_dl/extractor/generic.py | 6++++++
Myoutube_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 @@ -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 @@ -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(