我正在解析一个“iso-8859-15”编码的xml文件。
像'苏黎世','Aktienrückk'这样的词汇被转换为“ä”等。
我尝试了这些建议:
p = ElementTree.fromstring(u'<p>found "\u62c9\u67cf \u591a\u516c \u56ed"</p>'.encode('utf8'))
>>> p.text
u'found "\u62c9\u67cf \u591a\u516c \u56ed"'
>>> print p.text
但我收到UnicodeDecodeError: 'ascii' codec can't decode byte
即使这样也无济于事
content = unicode(mystring.strip(codecs.BOM_UTF8), 'utf-8')
我在Stack Overflow上尝试了很多建议,但我找不到自己的方式。
我需要将解析后的内容写回具有相同字符集的html文件,例如'ü'
答案 0 :(得分:1)
试试这个:
from xml.etree import ElementTree
p = ElementTree.fromstring(u'<p>found "\u62c9\u67cf \u591a\u516c \u56ed"</p>'.encode('utf8'))
print p.text.encode('utf8')
found "拉柏 多公 园"
对于你的例子:
# -*- coding: utf-8 -*-
from xml.etree import ElementTree
text = 'Aktienrückk'.decode('utf8')
print text.encode('utf8')
Aktienrückk
不要忘记将# -*- coding: utf-8 -*-
放在文件的开头。