使用 lxml 处理 CDATA 需要使用适当的声明制作解析器,但是 XSLT 呢?例如:
from lxml import etree
parser = etree.XMLParser(strip_cdata=False)
tree = etree.parse('sample_with_cdata.xml', parser)
transform = etree.XSLT(etree.parse('dupe.xsl'))
xml_out = transform(tree)
xml_out.write('processed.xml')
如果我通过 lxml XSLT 处理器使用 CDATA 处理 xml 文件,则所有 CDATA 都会被剥离。如何让 XSLT 处理器保持原样保留 CDATA?
PS。仅供参考,添加相同的解析器etree.XSLT
不会改变结果