学堂 学堂 学堂公众号手机端

lxml怎么处理XML文档中的XML CDATA段

lewis 1年前 (2024-04-10) 阅读数 25 #技术

在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段的内容并打印输出。


版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门