python解析xml降低内存

Python013

python解析xml降低内存,第1张

1. 使用ElementTree模块它是Python标准库中提供的一个XML解析模块,它使用简单,非常容易使用,可以降低内存占用。

2. 使用lxml模块,它是一个高性能的XML和HTML解析器,可以有效的降低内存占用。

3. 使用iterparse()函数,它可以遍历XML文档,可以降低内存占用。

4. 使用xml.sax模块,它是一个基于事件驱动的XML解析器,可以有效的降低内存占用。

python对XML的解析

常见的XML编程接口有DOM和SAX,这两种接口处理XML文件的方式不同,当然使用场合也不同。

python有三种方法解析XML,SAX,DOM,以及ElementTree:

1.SAX (simple API for XML )

python 标准库包含SAX解析器,SAX用事件驱动模型,通过在解析XML的过程中触发一个个的事件并调用用户定义的回调函数来处理XML文件。

2.DOM(Document Object Model)

将XML数据在内存中解析成一个树,通过对树的操作来操作XML。

3.ElementTree(元素树)

ElementTree就像一个轻量级的DOM,具有方便友好的API。代码可用性好,速度快,消耗内存少。

注:因DOM需要将XML数据映射到内存中的树,一是比较慢,二是比较耗内存,而SAX流式读取XML文件,比较快,占用内存少,但需要用户实现回调函数(handler)。