Python中使用SAX解析xml实例


Posted in Python onNovember 21, 2014

SAX是一种基于事件驱动的API。利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件;而事件处理器则负责对事件作出相应,对传递的XML数据进行处理。

实例:

import  sys, string from  xml.sax import  handler, make_parser

 

 class  TestHandler(handler.ContentHandler):                        

         def  __init__(self):                                                                

                 pass

                 

         def  startDocument(self):            

                 print  "Document Start ..."

                

        def  endDocument(self):                 

                print  "Document End ..."

                

        def  startElement(self, name, attrs):

                print  'start tag:', name

                

        def  endElement(self, name):

                print  'end tag:', name     

                

        def  characters(self, chrs):                                                     

                print  chrs

                

     

def  test():     

        handler = TestHandler()     

        parser = make_parser()     

        parser.setContentHandler(handler)

        f = open(sys.argv[1], 'r')     

        parser.parse(f)     

        f.close()

     

if  __name__ == '__main__':

        test()

除了DOM外的另一种读写文件的方式。

Python 相关文章推荐
python 快速排序代码
Nov 23 Python
pycharm 使用心得(三)Hello world!
Jun 05 Python
Python中SOAP项目的介绍及其在web开发中的应用
Apr 14 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
详解Python with/as使用说明
Dec 13 Python
python之当你发现QTimer不能用时的解决方法
Jun 21 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 Python
Python面向对象原理与基础语法详解
Jan 02 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
Jun 01 Python
Python参数传递及收集机制原理解析
Jun 05 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
python sort、sorted高级排序技巧
Nov 21 #Python
python中global与nonlocal比较
Nov 21 #Python
python装饰器decorator介绍
Nov 21 #Python
python多线程操作实例
Nov 21 #Python
Python中的闭包详细介绍和实例
Nov 21 #Python
Python多线程同步Lock、RLock、Semaphore、Event实例
Nov 21 #Python
python多进程操作实例
Nov 21 #Python
You might like
虹吸壶煮咖啡26个注意事项
2021/03/03 冲泡冲煮
Yii框架中memcache用法实例
2014/12/03 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
PHP 文件上传限制问题
2019/09/01 PHP
lib.utf.js
2007/08/21 Javascript
Grid得到选择行数据的方法总结
2011/01/17 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
javascript实现table选中的行以指定颜色高亮显示的方法
2015/05/13 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
JavaScript地理位置信息API
2016/06/11 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
jQuery用FormData实现文件上传的方法
2016/11/21 Javascript
使用 Node.js 开发资讯爬虫流程
2018/01/07 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
vue template中slot-scope/scope的使用方法
2018/09/06 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
2020/07/17 Javascript
详解Python中映射类型(字典)操作符的概念和使用
2015/08/19 Python
Python处理Excel文件实例代码
2017/06/20 Python
python实现周期方波信号频谱图
2018/07/21 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
python求平均数、方差、中位数的例子
2019/08/22 Python
python psutil监控进程实例
2019/12/17 Python
django 扩展user用户字段inlines方式
2020/03/30 Python
java关于string最常出现的面试题整理
2021/01/18 Python
美国大城市最热门旅游景点门票:CityPASS
2016/12/16 全球购物
局部内部类是否可以访问非final变量?
2013/04/20 面试题
项目计划书范文
2014/01/09 职场文书
公司董事长岗位职责
2014/06/08 职场文书
护士节活动总结
2014/08/29 职场文书
私营公司诉讼代理委托书范本
2014/09/13 职场文书
致我们终将逝去的青春观后感
2015/06/10 职场文书
Python 数据可视化之Matplotlib详解
2021/11/02 Python