使用 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
我正在尝试使用 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