Python解析XML文件

示例:

<annotation verified="no">
  <folder>IDcard&#8212;1000</folder>
  <filename>1_0</filename>
  <path>C:/Users/data/IDcard&#8212;1000/1_0.jpg</path>
  <source>
    <database>Unknown</database>
  </source>
  <size>
    <width>1732</width>
    <height>2309</height>
    <depth>3</depth>
  </size>
  <segmented>0</segmented>
  <mode>0</mode>
  <object>
    <name>&#29579;&#21746;&#23159;</name>
    <pose>Unspecified</pose>
    <truncated>0</truncated>
    <difficult>0</difficult>
    <bndbox>
      <xmin>357</xmin>
      <ymin>706</ymin>
      <xmax>597</xmax>
      <ymax>803</ymax>
    </bndbox>
  </object>
    ....
  <object>
    <name>&#22995;&#21517;</name>
    <pose>Unspecified</pose>
    <truncated>0</truncated>
    <difficult>0</difficult>
    <bndbox>
      <xmin>159</xmin>
      <ymin>736</ymin>
      <xmax>314</xmax>
      <ymax>813</ymax>
    </bndbox>
  </object>
</annotation>

得到每一个object,解析其name和bndbox的值

#导入
import xml.etree.ElementTree as ET

#待解析的文件路径
xml_path = ''

#建立tree
tree = ET.parse(xml_path)

#得到根节点
root = tree.getroot()

#按照‘object’检索出所有的object, 返回为一个列表
objs = root.findall("object")

#获取每一个object的name和bndbox
for obj in objs:
    name = obj[0].text
    bndbox = obj[4]
    xmin, ymin, xmax, ymax = [x.text for x in bndbox]
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值