Browse Source

[utils] add update_url_query function

remitamine 9 years ago
parent
commit
38f9ef31dc
2 changed files with 8 additions and 8 deletions
  1. 0 8
      youtube_dl/extractor/common.py
  2. 8 0
      youtube_dl/utils.py

+ 0 - 8
youtube_dl/extractor/common.py

@@ -20,7 +20,6 @@ from ..compat import (
     compat_urllib_error,
     compat_urllib_error,
     compat_urllib_parse,
     compat_urllib_parse,
     compat_urlparse,
     compat_urlparse,
-    compat_parse_qs,
     compat_str,
     compat_str,
     compat_etree_fromstring,
     compat_etree_fromstring,
 )
 )
@@ -518,13 +517,6 @@ class InfoExtractor(object):
             else:
             else:
                 self.report_warning(errmsg + str(ve))
                 self.report_warning(errmsg + str(ve))
 
 
-    def update_url_params(self, url, params):
-        parsed_url = compat_urlparse.urlparse(url)
-        qs = compat_parse_qs(parsed_url.query)
-        qs.update(params)
-        return compat_urlparse.urlunparse(
-            parsed_url._replace(query=compat_urllib_parse.urlencode(qs, True)))
-
     def report_warning(self, msg, video_id=None):
     def report_warning(self, msg, video_id=None):
         idstr = '' if video_id is None else '%s: ' % video_id
         idstr = '' if video_id is None else '%s: ' % video_id
         self._downloader.report_warning(
         self._downloader.report_warning(

+ 8 - 0
youtube_dl/utils.py

@@ -1719,6 +1719,14 @@ def urlencode_postdata(*args, **kargs):
     return compat_urllib_parse.urlencode(*args, **kargs).encode('ascii')
     return compat_urllib_parse.urlencode(*args, **kargs).encode('ascii')
 
 
 
 
+def update_url_query(url, query):
+    parsed_url = compat_urlparse.urlparse(url)
+    qs = compat_parse_qs(parsed_url.query)
+    qs.update(query)
+    return compat_urlparse.urlunparse(parsed_url._replace(
+        query=compat_urllib_parse.urlencode(qs, True)))
+
+
 def encode_dict(d, encoding='utf-8'):
 def encode_dict(d, encoding='utf-8'):
     def encode(v):
     def encode(v):
         return v.encode(encoding) if isinstance(v, compat_basestring) else v
         return v.encode(encoding) if isinstance(v, compat_basestring) else v