python xml解析嵌套属性

问题描述 投票:0回答:1

亲爱的开发人员,大家好。我无法完全解析xml文件。

结构看起来像

<foo>
   <bar1 id="1">
      <bar2>
        <foobar id="2">name1</foobar>
        <foobar id="3">name2</foobar>
     </bar2>
   </bar1>
</foo>

我使用了xml.etree库,所以我使用如下代码:source.get('Id')所以我得到第一个属性

要获得嵌套标签,我使用类似以下代码:source.find('bar / foobar')。text

问题是如何获取下一个嵌套属性?(Id = 2和id = 3)当我尝试使用带有斜杠的某些东西时显示错误source.get('bar / id')其他尝试只给我已经获得的第一个属性,第二个嵌套属性也具有相同的名称ID。

谢谢您的帮助

python xml parsing
1个回答
0
投票

您需要指定一个有效的XPATH表达式,例如:

foobars = source.findall('bar1/bar2/foobar')
for elem in foobars:
    print(elem.get('id'))

输出:

2
3
© www.soinside.com 2019 - 2024. All rights reserved.