[youku] Simplify a bit the 'entries' construction

Mainly avoid having to use an index.
This commit is contained in:
Jaime Marquínez Ferrándiz 2015-06-16 14:41:52 +02:00
parent 7f0172b3e5
commit f3aecb27a4

View file

@ -210,25 +210,23 @@ class YoukuIE(InfoExtractor):
video_urls_dict = self.construct_video_urls(data1, data2) video_urls_dict = self.construct_video_urls(data1, data2)
# construct info # construct info
entries = [] entries = [{
'id': '%s_part%d' % (video_id, i + 1),
'title': title,
'formats': [],
# some formats are not available for all parts, we have to detect
# which one has all
} for i in range(max(len(v) for v in data1['segs'].values()))]
for fm in data1['streamtypes']: for fm in data1['streamtypes']:
video_urls = video_urls_dict[fm] video_urls = video_urls_dict[fm]
for i in range(len(video_urls)): for video_url, seg, entry in zip(video_urls, data1['segs'][fm], entries):
if len(entries) < i + 1: entry['formats'].append({
entries.append({'formats': []}) 'url': video_url,
entries[i]['formats'].append({
'url': video_urls[i],
'format_id': self.get_format_name(fm), 'format_id': self.get_format_name(fm),
'ext': self.parse_ext_l(fm), 'ext': self.parse_ext_l(fm),
'filesize': int(data1['segs'][fm][i]['size']) 'filesize': int(seg['size']),
}) })
for i in range(len(entries)):
entries[i].update({
'id': '%s_part%d' % (video_id, i + 1),
'title': title,
})
return { return {
'_type': 'multi_video', '_type': 'multi_video',
'id': video_id, 'id': video_id,