Python中使用ElementTree解析XML文件

Python中使用ElementTree对XML文件进行解析

官方API介绍:https://docs.python.org/3.6/library/xml.etree.elementtree.html

XML文件介绍:

XML指可扩展标记语言(eXtensible Markup Language),接触过Java或者Android的同学们相信绝对不会陌生,XML被设计用来传输和存储数据,虽然现在用来与服务端交互更多情况下使用的都是Json格式的数据,但是XML格式还是有着广泛的应用。
最近在公司的项目中,需要使用Python脚本在后台对反编译的apk文件进行合并,其中对Manifest文件中标签的处理,主要就是用到了Python中的XML解析,因此写一篇文章记录一下。

Python中提供的XML解析方式:

方法 特点
SAX SAX解析通过流模式在解析XML的过程中触发对应的事件(start_element、char_data、end_element)并调用用户定义的回调函数来处理XML文件。
DOM 将XML数据在内存中解析成一个树,通过对树的操作来操作XML,占用内存大,解析速度较慢,优点是可以任意遍历树的节点。
ElementTree 类似一个轻量级的DOM,也是本篇文章主要介绍的。

准备一份XML格式的文件:

巧妇难为无米之炊,需要进行解析,首先必须有一个XML文件,本篇文章采用官方API示例中的XML文档,示例代码如下:

<?xml version="1.0"?>
<data>
    <country name="Liechtenstein">
        <rank>1</rank>
        <year>2008</year>
        <gdppc>141100</gdppc>
        <neighbor name="Austria" direction="E"/>
        <neighbor name="Switzerland" direction="W"/>
    </country>
    <country name="Singapore">
        <rank>4</rank>
        <year>2011</year>
        <gdppc>59900</gdppc>
        <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值