加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python 解析XML文件

发布时间:2020-05-24 09:26:55 所属栏目:Python 来源:互联网
导读:Python文件:复制代码代码如下:#parsexml.py#本例子参考自python联机文档,做了适当改动和添加importxml.parsers.expat#控制打印缩进level=0#获取某节点名称及属性值集合defstart_element(name,attrs):globallevelpr

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>

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读