commit 8cd9614abf81cb41055142d87158b5eda4353a4d
parent 324ac0a243c14340f7e4cd909e2e7c62828a2425
Author: Sergey M․ <dstftw@gmail.com>
Date: Sat, 24 Oct 2015 21:02:31 +0600
[downloader/f4m] More accurate fragment URL construction
Diffstat:
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/youtube_dl/downloader/f4m.py b/youtube_dl/downloader/f4m.py
@@ -340,11 +340,14 @@ class F4mFD(FragmentFD):
while fragments_list:
seg_i, frag_i = fragments_list.pop(0)
name = 'Seg%d-Frag%d' % (seg_i, frag_i)
- url_parsed = base_url_parsed._replace(path=base_url_parsed.path + name)
+ query = []
+ if base_url_parsed.query:
+ query.append(base_url_parsed.query)
if akamai_pv:
- url_parsed = url_parsed._replace(query=url_parsed.query + akamai_pv.strip(';'))
+ query.append(akamai_pv.strip(';'))
if info_dict.get('extra_param_to_segment_url'):
- url_parsed = url_parsed._replace(query=url_parsed.query + info_dict.get('extra_param_to_segment_url'))
+ query.append(info_dict['extra_param_to_segment_url'])
+ url_parsed = base_url_parsed._replace(path=base_url_parsed.path + name, query='&'.join(query))
frag_filename = '%s-%s' % (ctx['tmpfilename'], name)
try:
success = ctx['dl'].download(frag_filename, {'url': url_parsed.geturl()})