Я использую этот пакет здесь: HTML.py 0.04Кодирование Юникода и не юникод символов в HTML
Вот что я делаю:
import html
h = html.HTML()
h.p('Some simple Euro: €1.14')
h.p(u'Some Euro: €1.14')
Теперь, когда я >>> unicode(h)
я получаю сообщение об ошибке.
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 18: ordinal not in range(128)
Каков наилучший способ справиться с этим? Мне нужно написать html в файл.
В Py2, в лучшем случае, старайтесь всегда использовать строки юникода ('u'''), вы можете использовать' from __future__ import unicode_literals' в верхней части файла для автоматического преобразования большинства '' '' 'в' u '' 'автоматически. Лично я мог бы избежать Py2, если это возможно, это беспорядок в кодировании (делая много конверсии в вашей спине) и может быть очень запутанным. – JeromeJ