python cookbook学习笔记十二:XML解析
来源:互联网 发布:钢笔日常书法知乎 编辑:程序博客网 时间:2024/06/04 17:56
解析XML文件:
XML(eXtensible Markup Language)指可扩展标记语言,被设计用来传输和存储数据。XML和JSON两种文件格式是互联网上应用得最多的数据传输格式。Python解析XML有三种方法:一是xml.dom.*模块。二是xml.sax.*模块 三是xml.etree.ElementTree模块
首先介绍dom模块。一个DOM的解析器在解析一个XML文档的时候。一次性读取整个文档。把文档中的所有元素保存在内存中的一个树结构中。 可以看到这种方式比较适用于解析数据小的XML文档,否则会很耗内存。
比如下面的结构。<string-array>下面包括许多<item>。这个结构包含了北京市下面的地级市
解析代码如下:def xml_try(): domtree=xml.dom.minidom.parse(r'D:\test_source\arrays.xml') data=domtree.documentElement city=data.r'D:\test_source\rss20.xml',('start','end')) for event,elem in doc2: if event == 'start': tag_indicate.append(elem.tag) if event == 'end': if tag_indicate.pop() == element: yield elem.textif __name__=='__main__': for r in xml_try('title'): print r
在上面的代码中。当event为start的时候,记录此时的tag。当event为end的时候,比较记录的tag值和传入的element值。如果相当,则返回此时的elem.text. 在代码中我们传入的是title。得到的结果如下。
从上面几段代码可以看到,iterparse主要应用于比较大的xml文件。这种情况下如果一次性的读入所有数据形成树状结构,很耗内存。
阅读全文
0 0
- python cookbook学习笔记十二:XML解析
- Python cookbook 学习笔记一
- python cookbook 学习笔记--1
- [pyhton]python cookbook学习笔记
- python-cookbook学习笔记一
- python-cookbook学习笔记二
- python-cookbook学习笔记三
- python-cookbook学习笔记四
- python-cookbook学习笔记五
- python-cookbook学习笔记六
- python-cookbook学习笔记七
- python-cookbook学习笔记十一
- XML学习以及python解析xml笔记
- python技巧(2):--python cookbook学习笔记
- python技巧(3)--python cookbook学习笔记
- python技巧(4)----python cookbook学习笔记
- Python技巧(6):cookbook学习笔记
- python-cookbook学习笔记十 迭代器 三
- ZJOI考试总结
- 设计模式五原则
- 九度 题目1341:艾薇儿的演唱会(40分)
- [长链剖分] BZOJ 1758 [Wc2010]重建计划
- 0514 js函数
- python cookbook学习笔记十二:XML解析
- 嵌入式Linux基础学习(一)
- 关于怎样删除myEclipse的工作空间记录
- Hadoop单机模式和伪分布式搭建教程CentOS
- 【原创】WIN10安装Modelsim10.4c及和谐
- Python-基础学习笔记(五)
- codeforces235E
- c++实验6-矩阵求和
- matlab产生扫频余弦信号 chirp用法