使用 ElementTree 解析 XML 中的子项

Parsing subchilds in XML with ElementTree

我正在尝试使用 Python 3.2 中的 ElementTree 从 XML 文档中提取信息。

XML 看起来像这样:

<Page Id="1">
    <Group>4</Group>
    <Type>
        <Letter>B</Letter>
        <Number>101</Number>
        <Deep>
            <A>900</A>
            <B>900</B>
        </Deep>
    </Type>
</Page>

我设法从“组”中获取元素数据:

for Page in root.iter('Page'):
     Group = Page.find('Group').text
 

和“信件”-数据与:

for Type in root.iter('Type'):
     Dim = Type.find('Letter').text
 

但是我不知道如何从“Deep”(A 和 B)的子项中获取数据。 非常感谢所有帮助!

你们很亲近。使用 find 找到 Deep 标签并迭代它。

例如:

import xml.etree.ElementTree as ET
tree = ET.parse(filename)
root = tree.getroot()
for Type in root.iter('Type'):
    for deep_tag in Type.find("Deep"):
        print( deep_tag.text )

输出:

900
900