瀏覽代碼

[livestream] Properly build smil URLs (#8794)

Sergey M․ 9 年之前
父節點
當前提交
e375a149e1
共有 1 個文件被更改,包括 5 次插入1 次删除
  1. 5 1
      youtube_dl/extractor/livestream.py

+ 5 - 1
youtube_dl/extractor/livestream.py

@@ -14,6 +14,7 @@ from ..utils import (
     xpath_with_ns,
     xpath_with_ns,
     xpath_text,
     xpath_text,
     orderedSet,
     orderedSet,
+    update_url_query,
     int_or_none,
     int_or_none,
     float_or_none,
     float_or_none,
     parse_iso8601,
     parse_iso8601,
@@ -72,7 +73,10 @@ class LivestreamIE(InfoExtractor):
         for vn in video_nodes:
         for vn in video_nodes:
             tbr = int_or_none(vn.attrib.get('system-bitrate'), 1000)
             tbr = int_or_none(vn.attrib.get('system-bitrate'), 1000)
             furl = (
             furl = (
-                '%s%s?v=3.0.3&fp=WIN%%2014,0,0,145' % (base, vn.attrib['src']))
+                update_url_query(compat_urlparse.urljoin(base, vn.attrib['src']), {
+                    'v': '3.0.3',
+                    'fp': 'WIN% 14,0,0,145',
+                }))
             if 'clipBegin' in vn.attrib:
             if 'clipBegin' in vn.attrib:
                 furl += '&ssek=' + vn.attrib['clipBegin']
                 furl += '&ssek=' + vn.attrib['clipBegin']
             formats.append({
             formats.append({