python 读取xml获取包含指定标签的数据_python如何读取xml标签的多个的属性值

有两种方法,一种是xml.dom.minidom,另一种是xml.etree.ElementTree。

这里先说第一种。

昂,到家一看第二种已经有人写出来了,这里更新一下代码,有处小问题。

另外其实还有第三种叫“正则匹配”的方法,晚些时候更新。

import xml.dom.minidom

from xml.dom import Node

path = 'xml文件路径'

dom = xml.dom.minidom.parse(path)

root = dom.documentElement

listInfos = []

for child in root.childNodes:

if child.nodeType == Node.ELEMENT_NODE:

dictAttr = {}

for key in child.attributes.keys():

attr = child.attributes[key]

dictAttr[attr.name] = attr.value

listInfos.append({child.nodeName: dictAttr})

# 输出结果更清晰直观一点

for index, each in enumerate(listInfos):

print '----', index + 1, '----', each

输出结果:

---- 1 ---- {u'Item': {u'TotalResult': u'OK', u'CheckResult': u'OK', u'AvName': u'a', u'CheckStatus': u'2', u'TotalStatus': u'2', u'FileId': u'21'}}

---- 2 ---- {u'Item': {u'TotalResult': u'OK', u'CheckResult': u'OK', u'AvName': u'a', u'CheckStatus': u'2', u'TotalStatus': u'2', u'FileId': u'21'}}

---- 3 ---- {u'Item': {u'TotalResult': u'OK', u'CheckResult': u'OK', u'AvName': u'a', u'CheckStatus': u'2', u'TotalStatus': u'2', u'FileId': u'21'}}

如需详细注释的话可以留言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值