首页 > 编程语言 > 详细

python基础-XML解析

时间:2014-11-01 23:05:57      阅读:402      评论:0      收藏:0      [点我收藏+]

python提供了两种解析xml的方式

SAX Simple API for xml

适合解析大型文件,因为解析内容不会保存在内容中,而是在解析到相关内容的时候调用注册的方法

DOM document object model

将整个文档读取到内存中形成一个树形结构

 

sax解析方式

    import xml.sax
    
    class MyXmlHandler(xml.sax.ContentHandler):
        def __init__(self):
            name=""
    
        def startElement(self,tag,attributes):
            print "startElement tag:"+ tag
            print attributes
    
        def endElement(self,tag):
            print "endElement tag:" +tag
    
        def characters(self,content):
            #print "charaters:"+self.CurrenntData
            print content
            print ""
    
    parser = xml.sax.make_parser()
    
    # turn off namepsaces
    #? parser.setFeature(xml.sax.handler.feature_namespaces, 0)
    
    Handler = MyXmlHandler()
    parser.setContentHandler( Handler )
    parser.parse("example-req.xml")

 

DOM的解析方式

要简洁很多

from xml.dom.minidom import parse
import xml.dom.minidom

DOMTree = xml.dom.minidom.parse("example-req.xml")
collection = DOMTree.documentElement

ActivityCode=collection.getElementsByTagName("ActivityCode")
print ActivityCode[0].childNodes[0].data

 

python基础-XML解析

原文:http://www.cnblogs.com/alwaysthinking/p/4067907.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!