UnicodeEncodeError - opening encoded URLs
D4rko
steelide at gmail.com
Fri Mar 27 17:33:12 EDT 2009
Hi!
I have a problem with urllib2 open() function. My application is
receiving the following request - as I can see in the developement
server console it is properly encoded:
[27/Mar/2009 22:22:29] "GET /[blahblah]/Europa_%C5%9Arodkowa/5 HTTP/
1.1" 500 54572
Then it uses this request parameter as name variable to build
wikipedia link, and tries to acces it with following code:
url = u'http://pl.wikipedia.org/w/index.php?title=' + name +
'&printable=yes'
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
wikipage = opener.open(url)
Unfortunately, the last line fails with the exception:
UnicodeEncodeError 'ascii' codec can't encode character u'\u015a' in
position 30: ordinal not in range(128). Using urlencode(url) results
in TypeError "not a valid non-string sequence or mapping object", and
quote(url) fails because of KeyError u'\u015a' . How can I properly
parse this request to make it work (ie. acces
http://pl.wikipedia.org/wiki/Europa_%C5%9Arodkowa)?
More information about the Python-list
mailing list