diff options
| author | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2014-04-16 15:45:05 +0200 | 
|---|---|---|
| committer | Jaime Marquínez Ferrándiz <jaime.marquinez.ferrandiz@gmail.com> | 2014-04-16 15:45:05 +0200 | 
| commit | 3d1bb6b4dd472e0232af029f05e0a1c8e3c1e1c9 (patch) | |
| tree | 56ff0dac443551429ddcc7c92e9a8e34f3242ab8 | |
| parent | 1db2666916f25d9e3d6e73c60fe36e1ce99d1813 (diff) | |
Add an extractor for tlc.de (fixes #2748)
| -rw-r--r-- | youtube_dl/extractor/__init__.py | 1 | ||||
| -rw-r--r-- | youtube_dl/extractor/tlc.py | 42 | 
2 files changed, 43 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 3a91e1a46..ae5296d90 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -251,6 +251,7 @@ from .tf1 import TF1IE  from .theplatform import ThePlatformIE  from .thisav import ThisAVIE  from .tinypic import TinyPicIE +from .tlc import TlcDeIE  from .toutv import TouTvIE  from .toypics import ToypicsUserIE, ToypicsIE  from .traileraddict import TrailerAddictIE diff --git a/youtube_dl/extractor/tlc.py b/youtube_dl/extractor/tlc.py new file mode 100644 index 000000000..0a092ea3c --- /dev/null +++ b/youtube_dl/extractor/tlc.py @@ -0,0 +1,42 @@ +# encoding: utf-8 +from __future__ import unicode_literals +import re + +from .common import InfoExtractor +from .brightcove import BrightcoveIE + + +class TlcDeIE(InfoExtractor): +    IE_NAME = 'tlc.de' +    _VALID_URL = r'http://www\.tlc\.de/sendungen/[^/]+/videos/(?P<title>[^/?]+)' + +    _TEST = { +        'url': 'http://www.tlc.de/sendungen/breaking-amish/videos/#3235167922001', +        'info_dict': { +            'id': '3235167922001', +            'ext': 'mp4', +            'title': 'Breaking Amish: Die Welt da draußen', +            'uploader': 'Discovery Networks - Germany', +            'description': 'Vier Amische und eine Mennonitin wagen in New York' +                '  den Sprung in ein komplett anderes Leben. Begleitet sie auf' +                ' ihrem spannenden Weg.', +        }, +    } + +    def _real_extract(self, url): +        mobj = re.match(self._VALID_URL, url) +        title = mobj.group('title') +        webpage = self._download_webpage(url, title) +        iframe_url = self._search_regex( +            '<iframe src="(http://www\.tlc\.de/wp-content/.+?)"', webpage, +            'iframe url') +        # Otherwise we don't get the correct 'BrightcoveExperience' element, +        # example: http://www.tlc.de/sendungen/cake-boss/videos/cake-boss-cannoli-drama/ +        iframe_url = iframe_url.replace('.htm?', '.php?') +        iframe = self._download_webpage(iframe_url, title) + +        return { +            '_type': 'url', +            'url': BrightcoveIE._extract_brightcove_url(iframe), +            'ie': BrightcoveIE.ie_key(), +        }  | 
