簡體   English   中英

Python minidom XML解析器-忽略子標簽

[英]Python minidom XML parser - ignore child tags

我有一個XML文件,看起來像:

<tag1>
    <tag2>
        I am too good <italic>to be true</italic>
    </tag2>
</tag1>

現在,當我想提取“ tag2”標簽中的數據時,然后假設將XML文件讀入“ XML_data”變量中:

XML_data.getElementsByTagName('tag1')[0].getElementsByTagName('tag2')[0].childNodes[0].data
evaluates to "I am too good"
and 
XML_data.getElementsByTagName('tag1')[0].getElementsByTagName('tag2')[0].getElementsByTagName('italic')[0].childNodes[0].data
evaluates to "to be true"

我想要的是能夠通過忽略斜體標簽來提取tag2中的整個塊。 即,我希望我的能力

"I am too good <italic>to be true</italic>"

我該怎么做呢? 請幫忙。

終於用了ElementTree

import xml.etree.ElementTree as ET
import re

def extractTextFromElement(elementName, stringofxml):
    tree = ET.fromstring(stringofxml)
    for child in tree.getiterator():
        if child.tag == elementName:
            len = ET.tostring(child)
            return re.sub(r'<.*?>', '', len)


usage: extractTextFromElement('tag2', XML_data)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM