dom方式在解析xml数据时是将整个文档树加载到内存中,因此在解析大型一点的xml数据时没什么优势,这个时候可以考虑使用sax的方式解析
首先要实现自己的xml.sax.handler.ContentHandler内容处理者类
主要是重载以下方法:
def __init__(self):
xml.sax.handler.ContentHandler.__init(self)#初始化方法
def startDocument(self):#开始解析文档
print("start handler document")
def endDocument(self):#结束解析文档
print("end handler document")
def startElement(self,name,attrs):#开始解析节点
print(name,attrs)
def endElement(self,name):#结束解析节点