[niconico] Use encode_dict
authorSergey M․ <dstftw@gmail.com>
Sun, 6 Sep 2015 01:42:45 +0000 (07:42 +0600)
committerSergey M․ <dstftw@gmail.com>
Sun, 6 Sep 2015 01:42:45 +0000 (07:42 +0600)
youtube_dl/extractor/niconico.py

index 0f8aa5adad5b2247621ce00249f3bd03a33a104a..bda1cff056d35ffd9cb876a0cc2fc141a6ce2ba1 100644 (file)
@@ -12,6 +12,7 @@ from ..compat import (
     compat_urlparse,
 )
 from ..utils import (
+    encode_dict,
     ExtractorError,
     int_or_none,
     parse_duration,
@@ -100,10 +101,7 @@ class NiconicoIE(InfoExtractor):
             'mail': username,
             'password': password,
         }
-        # Convert to UTF-8 *before* urlencode because Python 2.x's urlencode
-        # chokes on unicode
-        login_form = dict((k.encode('utf-8'), v.encode('utf-8')) for k, v in login_form_strs.items())
-        login_data = compat_urllib_parse.urlencode(login_form).encode('utf-8')
+        login_data = compat_urllib_parse.urlencode(encode_dict(login_form_strs)).encode('utf-8')
         request = compat_urllib_request.Request(
             'https://secure.nicovideo.jp/secure/login', login_data)
         login_results = self._download_webpage(