python – lxml更改Unicode字符

我正在使用lxml来读取xml文件并更改一些细节.但是,在运行它时,我发现即使我只是使用lxml读取文件然后再将其写出来,如下所示:

fil='iTunes Music Library.XML'
tre=etree.parse(fil)
tre.write('temp.xml')

我发现Queensrÿche转换为Queensrÿ che.有人知道怎么修这个东西吗?

最佳答案 将您的最后一行更改为:

tre.write('temp.xml', encoding='utf-8')

否则lxml以ASCII编码写入XML,因此必须转义所有非ASCII字符.

点赞