Python 解析XML文件


Posted in Python onApril 15, 2009

Python文件:

#parsexml.py 
#本例子参考自python联机文档,做了适当改动和添加 import xml.parsers.expat 
#控制打印缩进 
level = 0 
#获取某节点名称及属性值集合 
def start_element(name, attrs): 
global level 
print ' '*level, 'Start element:', name, attrs 
level = level + 1 
#获取某节点结束名称 
def end_element(name): 
global level 
level = level - 1 
print ' '*level, 'End element:', name 
#获取某节点中间的值 
def char_data(data): 
if(data == '\n'): 
return 
if(data.isspace()): 
return 
global level 
print ' '*level, 'Character data:', data 
p = xml.parsers.expat.ParserCreate() 
p.StartElementHandler = start_element 
p.EndElementHandler = end_element 
p.CharacterDataHandler = char_data 
p.returns_unicode = False 
f = file('sample.xml') 
p.ParseFile(f) 
f.close()

XML文件(sample.xml):
<contacts id="bluecrystal"> 
<item name="keen" fff="ddd"> 
<telephone type="phone">222222222</telephone> 
<telephone type="mobile">134567890</telephone> 
</item> 
<item name="bcm"> 
<telephone type="phone">11111111</telephone> 
<telephone type="mobile">15909878909</telephone> 
</item> 
</contacts>
Python 相关文章推荐
深入理解python try异常处理机制
Jun 01 Python
Python模块文件结构代码详解
Feb 03 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
Feb 11 Python
python 接收处理外带的参数方法
Dec 03 Python
Python+PyQt5实现美剧爬虫可视工具的方法
Apr 25 Python
pyqt5 使用cv2 显示图片,摄像头的实例
Jun 27 Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 Python
python同步windows和linux文件
Aug 29 Python
pytorch中的weight-initilzation用法
Jun 24 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
pycharm Tab键设置成4个空格的操作
Feb 26 Python
Python 中的Sympy详细使用
Aug 07 Python
合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友
Apr 09 #Python
python thread 并发且顺序运行示例
Apr 09 #Python
python 判断一个进程是否存在
Apr 09 #Python
python ElementTree 基本读操作示例
Apr 09 #Python
python 获取et和excel的版本号
Apr 09 #Python
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
Apr 09 #Python
python 获取文件列表(或是目录例表)
Mar 25 #Python
You might like
php5.2时间相差8小时
2007/01/15 PHP
PHP为表单获取的URL 地址预设 http 字符串函数代码
2010/05/26 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
2013/11/26 PHP
php打包压缩文件之ZipArchive方法用法分析
2016/04/30 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
PHP chr()函数讲解
2019/02/11 PHP
为原生js Array增加each方法
2012/04/07 Javascript
javascript实现日历控件(年月日关闭按钮)
2012/12/12 Javascript
Javascript MVC框架Backbone.js详解
2014/09/18 Javascript
jQuery Real Person验证码插件防止表单自动提交
2015/11/06 Javascript
详解javascript new的运行机制
2016/01/26 Javascript
微信小程序 配置文件详细介绍
2016/12/14 Javascript
javascript操作cookie
2017/01/17 Javascript
React-Router如何进行页面权限管理的方法
2017/12/06 Javascript
记录一篇关于redux-saga的基本使用过程
2018/08/18 Javascript
微信小程序如何连接Java后台
2019/08/08 Javascript
vue的路由映射问题及解决方案
2019/10/14 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
Python3 操作符重载方法示例
2017/11/23 Python
python删除服务器文件代码示例
2018/02/09 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Python用61行代码实现图片像素化的示例代码
2018/12/10 Python
使用python-pptx包批量修改ppt格式的实现
2020/02/14 Python
Python中os模块功能与用法详解
2020/02/26 Python
属性与 @property 方法让你的python更高效
2020/09/21 Python
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
老师自我鉴定范文
2013/12/25 职场文书
英语老师推荐信
2014/02/26 职场文书
煤矿安全协议书
2014/08/20 职场文书
质量主管工作职责
2014/09/26 职场文书
工作检讨书怎么写
2015/01/23 职场文书
魂断蓝桥观后感
2015/06/10 职场文书
微信小程序实现录音Record功能
2021/05/09 Javascript
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js