您的位置:首页 > 编程语言 > Python开发

Python 解析XML文件

2013-01-28 14:29 597 查看
#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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: