[zattoo] Fix video information extraction (closes #17175)

This commit is contained in:
Alexander Seiler 2018-09-11 16:40:27 +02:00
parent f5b0175349
commit 021ccc8aff

View File

@ -86,37 +86,37 @@ class ZattooBaseIE(InfoExtractor):
return next(
chan['cid'] for chan in channel_list
if chan.get('cid') and (
chan.get('display_alias') == channel_name or
chan.get('cid') == channel_name))
chan.get('display_alias') == channel_name or chan.get('cid') == channel_name))
except StopIteration:
raise ExtractorError('Could not extract channel id')
def _extract_cid_and_video_info(self, video_id):
data = self._download_json(
'%s/zapi/program/details' % self._HOST_URL,
'%s/zapi/v2/cached/program/power_details/%s' % (
self._HOST_URL, self._power_guide_hash),
video_id,
'Downloading video information',
query={
'program_id': video_id,
'complete': True
'program_ids': video_id,
'complete': True,
})
p = data['program']
p = data['programs'][0]
cid = p['cid']
info_dict = {
'id': video_id,
'title': p.get('title') or p['episode_title'],
'description': p.get('description'),
'thumbnail': p.get('image_url'),
'title': p.get('t') or p['et'],
'description': p.get('d'),
'thumbnail': p.get('i_url'),
'creator': p.get('channel_name'),
'episode': p.get('episode_title'),
'episode_number': int_or_none(p.get('episode_number')),
'season_number': int_or_none(p.get('season_number')),
'episode': p.get('et'),
'episode_number': int_or_none(p.get('e_no')),
'season_number': int_or_none(p.get('s_no')),
'release_year': int_or_none(p.get('year')),
'categories': try_get(p, lambda x: x['categories'], list),
'categories': try_get(p, lambda x: x['c'], list),
'tags': try_get(p, lambda x: x['g'], list)
}
return cid, info_dict
def _extract_formats(self, cid, video_id, record_id=None, is_live=False):