使用Python的Minidom(XML解析) - 不想要任何子节点子节点

时间:2015-12-24 11:49:06

标签: python xml parsing minidom

我正在使用Minidom(Python XML Parser)

示例:

> <layer1>
>   <layer2>
>     <element>1</element>
>     <if>
>       <element>2</element>
>     </if>
>     <element>3</element>
>   <layer2> 
> </layer1>

我在&lt;中使用“.getElementsByTagName” layer2&gt;得到每一个&lt;元素&gt;&lt; / element&gt;在&lt;如果&gt;&lt; / if&gt;大括号,有没有一种简单的方法来抓住&lt; layer2&gt;:&lt;元素&gt; 1&lt; / element&gt;&lt;元素&gt; 3&lt; / element&gt; ?

我搜索了minidom文档,但发现只有这个:

  

Document.getElementsByTagName(标签名)       搜索具有特定元素类型名称的所有后代(直接孩子,孩子的孩子等)。

希望有人可以帮助我

1 个答案:

答案 0 :(得分:1)

每个Element都有一个childNodes属性,该属性包含该元素的所有(直接)子元素。迭代这些,然后检查每个孩子,看看它是否是你正在寻找的元素之一,应该做你想要的。

for child in layer2_element.childNodes:
    if child.tagName == 'element':
        ...  # do something with `child`