python类库31[使用SAX来解析xml]
2011-12-27 15:13
726 查看
SAX是一种基于事件驱动的API。利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件;而事件处理器则负责对事件作出相应,对传递的XML数据进行处理。
实例:
import sys, string from xml.sax import handler, make_parser
class TestHandler(handler.ContentHandler):
def __init__(self):
pass
def startDocument(self):
print "Document Start ..."
def endDocument(self):
print "Document End ..."
def startElement(self, name, attrs):
print 'start tag:', name
def endElement(self, name):
print 'end tag:', name
def characters(self, chrs):
print chrs
def test():
handler = TestHandler()
parser = make_parser()
parser.setContentHandler(handler)
f = open(sys.argv[1], 'r')
parser.parse(f)
f.close()
if __name__ == '__main__':
test()
除了DOM外的另一种读写文件的方式。
完!
实例:
import sys, string from xml.sax import handler, make_parser
class TestHandler(handler.ContentHandler):
def __init__(self):
pass
def startDocument(self):
print "Document Start ..."
def endDocument(self):
print "Document End ..."
def startElement(self, name, attrs):
print 'start tag:', name
def endElement(self, name):
print 'end tag:', name
def characters(self, chrs):
print chrs
def test():
handler = TestHandler()
parser = make_parser()
parser.setContentHandler(handler)
f = open(sys.argv[1], 'r')
parser.parse(f)
f.close()
if __name__ == '__main__':
test()
除了DOM外的另一种读写文件的方式。
完!
相关文章推荐
- python类库31[使用SAX来解析xml]
- python类库31[使用minidom读写xml]
- python类库31[使用xml.etree.ElementTree读写xml]
- python类库31[使用minidom读写xml]
- python类库31[使用xml.etree.ElementTree读写xml]
- python类库31[使用minidom读写xml]
- 使用python的minidom解析xml
- python sax方式解析xml
- 使用python解析xml成对应的html示例分享
- 使用JAXP进行SAX解析(XMLReaderFactory、XMLReader 、SAXParserFactory与SAXParser)
- python类库31[命令行解析]
- 用SAX方式解析XML(使用Dom4J工具)--第二天
- Java&Xml教程(五)使用SAX方式解析XML文件
- Python 使用ElementTree解析XML
- python 6-3 如何解析简单的xml文档 使用标准库中的xml.etree.ElementTree,其中parse函数可以解析xml文档
- 实例034 使用SAX组件解析XML元素属性和属性值
- 使用JAXP进行SAX解析(XMLReaderFactory、XMLReader 、SAXParserFactory与SAXParser)
- 使用SAX方式解析XML
- python之xml解析 SAX解析及元素树解析
- Android使用Sax 及Pull 解析Xml demo