from __future__ import absolute_import, unicode_literals
import collections
+import datetime
import errno
import io
import json
if 'display_id' not in info_dict and 'id' in info_dict:
info_dict['display_id'] = info_dict['id']
+ if info_dict.get('upload_date') is None and info_dict.get('timestamp') is not None:
+ upload_date = datetime.datetime.utcfromtimestamp(
+ info_dict['timestamp'])
+ info_dict['upload_date'] = upload_date.strftime('%Y%m%d')
+
# This extractors handle format selection themselves
if info_dict['extractor'] in ['Youku']:
if download:
else:
formats = info_dict['formats']
+ if not formats:
+ raise ExtractorError('No video formats found!')
+
# We check that all the formats have the format and format_id fields
- for (i, format) in enumerate(formats):
+ for i, format in enumerate(formats):
if format.get('format_id') is None:
format['format_id'] = compat_str(i)
if format.get('format') is None: