diff --git a/youtube_dl/extractor/eventive.py b/youtube_dl/extractor/eventive.py index 2248c8a00..c276e5376 100644 --- a/youtube_dl/extractor/eventive.py +++ b/youtube_dl/extractor/eventive.py @@ -2,6 +2,16 @@ from __future__ import unicode_literals import re from .common import InfoExtractor +from ..compat import ( + compat_etree_fromstring, + compat_urllib_parse_unquote_plus, +) +from ..utils import ( + urlencode_postdata, +) + +API_URL = 'https://api.eventive.org/watch/play' + class EventiveIE(InfoExtractor): SUBTITLE_DATE_RE = re.compile(r'\((\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2})\)$') @@ -24,7 +34,22 @@ class EventiveIE(InfoExtractor): def _real_extract(self, url): video_id = self._match_id(url) + post = { + "event_id": video_id, + "film_id": "5f22387785a26f00360d29c9", + "token": "" + } + video = self._download_json(API_URL, video_id=video_id, data=urlencode_postdata(post)) + + formats = [] + for stream in video.get('playlist', []): + formats.extend(self._extract_ism_formats(stream['url'], video_id)) + self._sort_formats(formats) + info = { 'id': video_id, + 'title': stream['name'], + 'formats': formats, } + return info