SAX is used in Python to parse XML instances
- 2020-04-02 14:24:20
- OfStack
SAX is an event-driven API. Parsing an XML document with SAX involves two parts: a parser and an event handler. The parser is responsible for reading the XML document and sending events, such as element start and element end events, to the event handler. The event handler is responsible for responding to the event and processing the XML data that is passed.
Example:
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()
Another way to read and write files besides the DOM.