[YoutubeDL] Expect all kind of strings in urlopen

Now it doesn't fail if req is python2's str
This commit is contained in:
Sergey M․ 2014-09-28 02:07:42 +07:00
parent 3a203b8bfa
commit 68b0973046
1 changed files with 3 additions and 2 deletions

View File

@ -1250,12 +1250,13 @@ class YoutubeDL(object):
# urllib chokes on URLs with non-ASCII characters (see http://bugs.python.org/issue3991)
# To work around aforementioned issue we will replace request's original URL with
# percent-encoded one
url = req if isinstance(req, compat_str) else req.get_full_url()
req_is_string = isinstance(req, basestring)
url = req if req_is_string else req.get_full_url()
url_escaped = escape_url(url)
# Substitute URL if any change after escaping
if url != url_escaped:
if isinstance(req, compat_str):
if req_is_string:
req = url_escaped
else:
req = compat_urllib_request.Request(