不转义lxml(python3)中的属性内容?

不转义lxml(python3)中的属性内容?,python,Python,在此python脚本中: #/usr/bin/env蟒蛇3 将lxml.etree作为etree导入 如果名称=“\uuuuu main\uuuuuuuu”: xml_tree=etree.xml(“”) 中文內容 """) xsl_tree=etree.XML(“”) """) transform=etree.XSLT(xsl_树) 结果=转换(xml_树) 打印(etree.tostring(xml_-tree,encoding=“UTF-8”).decode('UTF-8')) 打印(et

在此python脚本中:

#/usr/bin/env蟒蛇3
将lxml.etree作为etree导入
如果名称=“\uuuuu main\uuuuuuuu”:
xml_tree=etree.xml(“”)
中文內容
""")
xsl_tree=etree.XML(“”)
""")
transform=etree.XSLT(xsl_树)
结果=转换(xml_树)
打印(etree.tostring(xml_-tree,encoding=“UTF-8”).decode('UTF-8'))
打印(etree.tostring(result,encoding=“UTF-8”).decode('UTF-8'))
我得到的结果是:

<檔>
<段 屬性="段落的意思">中文內容</段>
</檔>
<節點 名稱="&#x6A94;" 屬性="&#x503C;">
<節點 名稱="&#x6BB5;" 屬性="&#x503C;">中文內容</節點>
</節點>

中文內容
中文內容
XSLT转换似乎会对属性值转义unicode字符(即使它们是XML安全的)。有没有一种方法可以输出属性值为非转义的转换后的XML?我想要这样的结果:

<檔>
<段 屬性="段落的意思">中文內容</段>
</檔>
<節點 名稱="檔" 屬性="值">
<節點 名稱="段" 屬性="值">中文內容</節點>
</節點>

中文內容
中文內容

尝试使用
etree.tostring(result,encoding=“unicode”,method=“html”)
(或者干脆使用
str(result)
)。使用
unicode
作为编码比使用
UTF-8
然后解码更好。我的实际情况是输出完整的xhtml文档。
str(result)
方法确实有效,但有几个问题:(1)它会在
标记之后自动添加
(不是有效的xhtml);(2) 它输出标签,如
,这是丑陋和无效的;(3) 它不输出
xml声明。有什么方法可以避免它们吗?试着使用
etree.tostring(result,encoding=“unicode”,method=“html”)
(或者干脆用
str(result)
)。使用
unicode
作为编码比使用
UTF-8
然后解码更好。我的实际情况是输出完整的xhtml文档。
str(result)
方法确实有效,但有几个问题:(1)它会在
标记之后自动添加
(不是有效的xhtml);(2) 它输出标签,如
,这是丑陋和无效的;(3) 它不输出
xml声明。有什么方法可以避免它们吗?试着使用
etree.tostring(result,encoding=“unicode”,method=“html”)
(或者干脆用
str(result)
)。使用
unicode
作为编码比使用
UTF-8
然后解码更好。我的实际情况是输出完整的xhtml文档。
str(result)
方法确实有效,但有几个问题:(1)它会在
标记之后自动添加
(不是有效的xhtml);(2) 它输出标签,如
,这是丑陋和无效的;(3) 它不输出
xml声明。有什么办法可以避免它们吗?