[niconico] Use encode_dict

This commit is contained in:
Sergey M․ 2015-09-06 07:42:45 +06:00
parent 515fc8776f
commit cd019668dc

View file

@ -12,6 +12,7 @@
compat_urlparse, compat_urlparse,
) )
from ..utils import ( from ..utils import (
encode_dict,
ExtractorError, ExtractorError,
int_or_none, int_or_none,
parse_duration, parse_duration,
@ -100,10 +101,7 @@ def _login(self):
'mail': username, 'mail': username,
'password': password, 'password': password,
} }
# Convert to UTF-8 *before* urlencode because Python 2.x's urlencode login_data = compat_urllib_parse.urlencode(encode_dict(login_form_strs)).encode('utf-8')
# 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')
request = compat_urllib_request.Request( request = compat_urllib_request.Request(
'https://secure.nicovideo.jp/secure/login', login_data) 'https://secure.nicovideo.jp/secure/login', login_data)
login_results = self._download_webpage( login_results = self._download_webpage(