Minidom:获取所选节点的所有属性?

时间:2012-10-01 15:30:42

标签: python python-2.7 xmlnode minidom

我以递归方式遍历XML中的所有节点:

def verify_elements_children(root):
    if root.childNodes:
        for node in root.childNodes:
            if node.nodeType == node.ELEMENT_NODE:
               if node.tagName in config_elements_children[node.parentNode.tagName]:
#                  print node.toxml()
                   verify_elements_children(node)

但我不知道如何获取所选node所选的所有属性名称?

1 个答案:

答案 0 :(得分:6)

您可以简单地访问attributes属性,这是一个NamedNodeMap,您可以在其上调用items来获取字符串键和值:

import xml.dom.minidom
n = xml.dom.minidom.parseString('<n a="1" b="2" />').documentElement
attrs = dict(n.attributes.items())
assert attrs == {'a': '1', 'b': '2'}