繁体   English   中英

Python:如何使用xml.dom.minidom获取XML元素的文本内容?

[英]Python: How do you get an XML element's text content using xml.dom.minidom?

我在一个XML对象上调用了elems = xmldoc.getElementsByTagName('myTagName') ,我将其解析为minidom.parse(xmlObj) 现在我正在尝试获取此元素的文本内容,虽然我花了一段时间浏览dir()并尝试了解决方法,但我还没有找到调用。 作为我想要完成的一个例子,在:

<myTagName> Hello there </myTagName>

我想提取只是“你好”。 (显然我可以自己解析这个,但我希望有一些内置的功能)

谢谢

试试这样:

xmldoc.getElementsByTagName('myTagName')[0].firstChild.nodeValue

等一下......你想要给定节点下的所有文本吗? 然后它涉及某种子树遍历功能。 不必递归,但这很好:

    def get_all_text( node ):
        if node.nodeType ==  node.TEXT_NODE:
            return node.data
        else:
            text_string = ""
            for child_node in node.childNodes:
                text_string += get_all_text( child_node )
            return text_string
for elem in elems:
    print elem.firstValue.nodeValue

这将打印出每个myTagName的文本。

詹姆士

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM