Я программирую в Python, и я получаю информацию с веб-страницы через библиотеку urllib2
. Проблема заключается в том, что эта страница может предоставить мне с не-ASCII символов, как 'ñ'
, 'á'
и т.д. В тот самый момент, urllib2
получает этот характер, он вызывает исключение, например:Как обрабатывать символы Unicode (не ASCII) в Python?
File "c:\Python25\lib\httplib.py", line 711, in send
self.sock.sendall(str)
File "<string>", line 1, in sendall:
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 74: ordinal not in range(128)
мне нужно обращаться эти персонажи. Я имею в виду, что я не хочу обрабатывать исключение, но продолжать программу. Есть ли какой-либо способ, например (я не знаю, если это что-то глупое), используйте другой codec, а не ASCII? Потому что мне нужно работать с этими символами, вставлять их в базу данных и т. Д.
Было бы полезно, если бы вы могли сказать, используете ли вы Python 3+ или что-то раньше. –
Не может быть Py3k, так как модуль urllib2 удален (завернут в urllib) ... –
Дубликат: http://stackoverflow.com/questions/1020892/python-urllib2-read-to-unicode –