用python读取xml文件

本以为python读取xml文件和读取excel一样简单,可网上各种教程复杂得一笔。我整理一种简单的xml读取方法。
基于dom.minidom来解析xml文件,是比较友好方便的。

import xml.dom.minidom as xmldom
# 读取xml文件
xml_file = xmldom.parse('xxx.xml')
# 获取xml文件中的元素
eles = xml_file.documentElement
# 获得子标签
subElementObj = elementobj.getElementsByTagName("标签名")
# 区分相同标签名的标签
subElementObj1 = elementobj.getElementsByTagName("标签名")
for i in range(len(subElementObj1)):
    print("subElementObj1[i]:", type(subElementObj1[i]))
    print(subElementObj1[i].firstChild.data)  
    #显示标签对之间的数据

上面的程序用起来还是比较麻烦,我写了一个稍微通用的函数,可以读取xml文件中特定的数据

import xml.dom.minidom as xmldom


def parse_xml(fn):
    xml_file = xmldom.parse(fn)
    eles = xml_file.documentElement
    print(eles.tagName)
    xmin = eles.getElementsByTagName("xmin")[0].firstChild.data
    xmax = eles.getElementsByTagName("xmax")[0].firstChild.data
    ymin = eles.getElementsByTagName("ymin")[0].firstChild.data
    ymax = eles.getElementsByTagName("ymax")[0].firstChild.data
    print(xmin, xmax, ymin, ymax)
    return xmin, xmax, ymin, ymax


def test_parse_xml():
    parse_xml('loiv3.xml')


if __name__ == "__main__":
    test_parse_xml()

猜你喜欢

转载自blog.csdn.net/leviopku/article/details/81299140