【发布时间】:2013-06-16 21:53:07
【问题描述】:
我正在尝试使用 lxml 将有效的法语文本字符串分配给文本字符串:
el = etree.Element("someelement")
el.text = 'Disponible à partir du 1er Octobre'
我得到错误:
ValueError:所有字符串必须与 XML 兼容:Unicode 或 ASCII,否 NULL 字节或控制字符
我也试过了:
el.ext = etree.CDATA('Disponible à partir du 1er Octobre')
但是我得到了同样的错误。
如何处理 XML 中的法语,尤其是 ISO-8859-1?有一些方法可以在 lxml 中的 tostring() 函数中指定编码,但不能在元素中分配文本值。
【问题讨论】:
-
el.text = etree.CDATA(('Disponible à partir du 1er Octobre').decode('utf-8')) 或 el.text = ('Disponible à partir du 1er Octobre' ).decode('utf-8')