Python解析xml

本文介绍了Python中三种解析XML的方法:SAX、DOM和ElementTree。SAX是一种事件驱动的解析方式,速度快但需要自定义事件处理;DOM将XML转换为内存中的树形结构,适合于需要修改XML的情况;ElementTree提供了一种简洁的树形解析方式,类似C/C++的树操作。文章通过实例代码展示了三种方法的使用和区别。
摘要由CSDN通过智能技术生成

SAX(simple API for XML)事件驱动,解析xml,该方法的核心是标签式解析,即逐行解析对应的标签来进行解析,优点是解析速度快,由事件进行驱动,分为标签起始事件,内容事件,标签结束事件。读取时需要构建对应解析的事件类。用来快速读取xml信息。

DOM对象驱动,解析xml,是以将xml作为对象进行解析,与ASX相比解析速度慢,DOM解析时需要创建树,在内存中对树的解析操作来解析xml,可用来修改xml。

ElementTree将xml以一种树形展开式进行解析,类似于C/C++树的形式,比DOM简单。

加载包

SAX 			import xml.sax
DOM 			import xml.dom.minidom
ElementTree 	import xml.etree.ElementTree

本次使用的xml文件内容为

<?xml version="1.0" encoding="utf-8" ?>
<body title="python xml test">
    <class title="ZX Test 1" type="python xml">
        <number>1</number>
        <Text>ptrhon xml test 1</Text>
        <time>2019</time>
        <next title="ZX nest 1">
            <valueInfo type="str"><V>1.1</V></valueInfo>
            <valueInfo type="str"><V>1.2</V></valueInfo>
        </next>
    </class>
    <class title="ZX Test 2" type="python xml"
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值