From 445d3b9a8ad93dc476142dc76fbb882e719379c8 Mon Sep 17 00:00:00 2001 From: Andy Date: Sat, 6 Jul 2019 19:43:27 -0400 Subject: [PATCH] [tatorttube] Add new extractor --- youtube_dl/extractor/extractors.py | 1 + youtube_dl/extractor/tatorttube.py | 46 ++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 youtube_dl/extractor/tatorttube.py diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index 02f17cf0d..f3fe1e9c2 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -1108,6 +1108,7 @@ from .tagesschau import ( ) from .tass import TassIE from .tastytrade import TastyTradeIE +from .tatorttube import TatortTubeIE from .tbs import TBSIE from .tdslifeway import TDSLifewayIE from .teachable import ( diff --git a/youtube_dl/extractor/tatorttube.py b/youtube_dl/extractor/tatorttube.py new file mode 100644 index 000000000..a17061a13 --- /dev/null +++ b/youtube_dl/extractor/tatorttube.py @@ -0,0 +1,46 @@ +# coding: utf-8 +from __future__ import unicode_literals + +from .common import InfoExtractor + + +class TatortTubeIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?tatort\.tube/Stream/.*-(?P[0-9]+)' + _TEST = { + 'url': 'https://www.tatort.tube/Stream/Taxi-nach-Leipzig-1', + 'info_dict': { + 'id': '1', + 'ext': 'mp4', + 'title': 'Taxi-nach-Leipzig', + 'description': 'Tatort: Taxi nach Leipzig (Folge 1, 1970) Jetzt Kostenlos streamen! ' + 'Ein Fernschreiben des Generalstaatsanwalts der DDR fordert die ' + 'Strafverfolgungsbehörden der Bundesrepublik zur Mithilfe bei der ' + 'Klärung eines Falles auf. An einem Autobahnrastplatz bei Leipzig ' + 'ist die Leiche eines Jungen gefunden worden, der Schuhe...', + 'thumbnail': r're:^https?://.*\.jpg$', + }, + 'params': { + 'skip_download': False, + } + } + + def _real_extract(self, url): + video_id = self._match_id(url) + webpage = self._download_webpage(url, video_id) + + title = self._search_regex(r'(content\=\"http\:\/\/www\.tatort\.tube\/Stream\/)([\w+\-]+)-([0-9]+)(\"\spr)', webpage, 'title', group=2) + description = self._og_search_description(webpage) + token = self._search_regex(r'\.mp4/master\.m3u8\?tkn\=([\w|\-]+)\&exp\=(\d+)', webpage, 'token', group=1) + tokenExpires = self._search_regex(r'\.mp4/master\.m3u8\?tkn\=([\w|\-]+)\&exp\=(\d+)', webpage, 'tokenExpires', group=2) + + return { + 'id': video_id, + 'title': title, + 'description': description, + 'formats': [{ + 'format_id': 'hsl', + 'ext': 'mp4', + 'url': 'https://cdn.tatort.tube/hls/' + video_id + '.mp4/master.m3u8?tkn=' + token + '&exp=' + tokenExpires, + }], + 'thumbnail': 'https://www.tatort.tube/images/folge/' + video_id + '.jpg', + }