[eventive]: Parse ISM manifest for formats

archive/recovered-github-prs
Elan Ruusamäe 4 years ago
parent 413fb7b0c3
commit 5b4738b297

@ -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

Loading…
Cancel
Save