使用 minidom 获取 xml 标签之间的文本[重复]

2024-04-23

我有这个示例 xml 文档片段

<root>
    <foo>bar</foo>
    <foo>baz</foo>
</root>

我正在使用 xml.dom 中的 python minidom 方法。我正在使用 getElementsByTagName("foo") 读取标签。如何获取标签之间的文本?如果标签是嵌套的,我将如何获得它们?


因此,如果您需要取出文本,则可以执行以下操作:

import xml.dom.minidom
document = "<root><foo>bar</foo><foo>baby</foo></root>"
dom = xml.dom.minidom.parseString(document)

def getText(nodelist):
    rc = []
    for node in nodelist:
        if node.nodeType == node.TEXT_NODE:
            rc.append(node.data)
    return ''.join(rc)

def handleTok(tokenlist):
    texts = ""
    for token in tokenlist:
        texts += " "+ getText(token.childNodes)
    return texts
foo = dom.getElementsByTagName("foo")
text = handleTok(foo)
print text

他们在网站上有一个很好的例子:http://docs.python.org/library/xml.dom.minidom.html http://docs.python.org/library/xml.dom.minidom.html

编辑:对于嵌套标签,请检查网站上的示例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 minidom 获取 xml 标签之间的文本[重复] 的相关文章

随机推荐