【发布时间】:2013-06-24 10:51:16
【问题描述】:
使用 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 不会改变结果
【问题讨论】: