From a42b33349a47cf399bff0660dacca1af074d9813 Mon Sep 17 00:00:00 2001 From: TRox1972 Date: Fri, 27 May 2016 18:00:28 +0200 Subject: [PATCH] [FinalBosses] Add new extractor --- youtube_dl/extractor/extractors.py | 1 + youtube_dl/extractor/finalbosses.py | 46 +++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 youtube_dl/extractor/finalbosses.py diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index 05561149a..81e412c1d 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -236,6 +236,7 @@ from .facebook import FacebookIE from .faz import FazIE from .fc2 import FC2IE from .fczenit import FczenitIE +from .finalbosses import FinalBossesIE from .firstpost import FirstpostIE from .firsttv import FirstTVIE from .fivemin import FiveMinIE diff --git a/youtube_dl/extractor/finalbosses.py b/youtube_dl/extractor/finalbosses.py new file mode 100644 index 000000000..29946232f --- /dev/null +++ b/youtube_dl/extractor/finalbosses.py @@ -0,0 +1,46 @@ +# coding: utf-8 +from __future__ import unicode_literals + +import re +from .common import InfoExtractor + +from ..utils import unescapeHTML + + +class FinalBossesIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?finalbosses\.com/(?P[a-z-]+)' + _TEST = { + 'url': 'http://finalbosses.com/playing-with-sacks-golden-axe', + 'info_dict': { + 'id': 'TL2iCGym', + 'ext': 'mp4', + 'title': 'Playing With Sacks - Golden Axe - Final Bosses', + 'description': 'md5:8ece97844ce7fd3640d8536bc65c1c61', + 'thumbnail': 'http://finalbosses.com/wp-content/uploads/2015/06/Playingwithsacks-GoldenAxe.png', + }, + 'params': { + 'skip_download': True, + } + } + + def _real_extract(self, url): + mobj = re.match(self._VALID_URL, url) + display_id = mobj.group('display_id') + + webpage = self._download_webpage(url, display_id) + + video_id = self._search_regex( + r'content.jwplatform.com/players/(?P\w+)-.+.js', + webpage, 'video id') + + formats = self._extract_m3u8_formats( + 'http://content.jwplatform.com/manifests/%s.m3u8' % video_id, + display_id, 'mp4') + + return { + 'id': video_id, + 'title': self._og_search_title(webpage), + 'description': unescapeHTML(self._og_search_description(webpage)), + 'thumbnail': self._og_search_thumbnail(webpage), + 'formats': formats, + }