1
0
mirror of https://github.com/ytdl-org/youtube-dl.git synced 2024-12-23 08:26:50 +00:00

[YoutubeDL] Sanitize final URLs (Closes #8991)

This commit is contained in:
Sergey M․ 2016-03-26 19:37:41 +06:00
parent 17bcc626bf
commit dcf77cf1a7

View File

@ -65,6 +65,7 @@ from .utils import (
SameFileError, SameFileError,
sanitize_filename, sanitize_filename,
sanitize_path, sanitize_path,
sanitize_url,
sanitized_Request, sanitized_Request,
std_headers, std_headers,
subtitles_filename, subtitles_filename,
@ -1229,6 +1230,7 @@ class YoutubeDL(object):
t.get('preference'), t.get('width'), t.get('height'), t.get('preference'), t.get('width'), t.get('height'),
t.get('id'), t.get('url'))) t.get('id'), t.get('url')))
for i, t in enumerate(thumbnails): for i, t in enumerate(thumbnails):
t['url'] = sanitize_url(t['url'])
if t.get('width') and t.get('height'): if t.get('width') and t.get('height'):
t['resolution'] = '%dx%d' % (t['width'], t['height']) t['resolution'] = '%dx%d' % (t['width'], t['height'])
if t.get('id') is None: if t.get('id') is None:
@ -1263,6 +1265,7 @@ class YoutubeDL(object):
if subtitles: if subtitles:
for _, subtitle in subtitles.items(): for _, subtitle in subtitles.items():
for subtitle_format in subtitle: for subtitle_format in subtitle:
subtitle_format['url'] = sanitize_url(subtitle_format['url'])
if 'ext' not in subtitle_format: if 'ext' not in subtitle_format:
subtitle_format['ext'] = determine_ext(subtitle_format['url']).lower() subtitle_format['ext'] = determine_ext(subtitle_format['url']).lower()
@ -1292,6 +1295,8 @@ class YoutubeDL(object):
if 'url' not in format: if 'url' not in format:
raise ExtractorError('Missing "url" key in result (index %d)' % i) raise ExtractorError('Missing "url" key in result (index %d)' % i)
format['url'] = sanitize_url(format['url'])
if format.get('format_id') is None: if format.get('format_id') is None:
format['format_id'] = compat_str(i) format['format_id'] = compat_str(i)
else: else: