在lxml中处理XML文档中的XML CDATA段可以通过ElementTree的iter方法遍历文档中的所有元素,然后使用Element.text属性来访问元素的文本内容,如果元素包含CDATA段,则可以通过Element.text来获取CDATA段的内容。 以下是一个示例代码来处理XML文档中的XML CDATA段:
from lxml import etree
# 读取XML文档
xml_doc = etree.parse("example.xml")
# 遍历XML文档中的所有元素
for elem in xml_doc.iter():
# 判断元素是否包含CDATA段
if elem.text is not None and "<![CDATA[" in elem.text:
# 获取CDATA段内容
cdata_content = elem.text.replace("<![CDATA[", "").replace("]]>", "")
print("CDATA内容:", cdata_content)
在上面的代码中,首先使用etree.parse方法读取XML文档,然后使用iter方法遍历文档中的所有元素,通过判断元素的text属性是否包含“<![CDATA[”来确定是否是CDATA段,然后获取CDATA段的内容并打印输出。