Differences between revisions 2 and 3
Revision 2 as of 2022-05-10 18:39:20
Size: 833
Comment:
Revision 3 as of 2023-01-08 05:29:26
Size: 920
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

'''`xml.sax`''' is a module for parsing XML with a SAX (Simple API for XML) parser.

Python XML SAX

xml.sax is a module for parsing XML with a SAX (Simple API for XML) parser.


Usage

from xml.sax import handler, make_parser

class MyHandler(handler.ContentHandler):
    def __init__(self):
        handler.ContentHandler.__init__(self)
        self.in_page = False
        self.character_buffer = ""

    def startElement(self, name, attrs):
        if name == "page":
            self.in_page = True

    def endElement(self, name):
        if name == "page":
            self.in_page = False
        print(self.character_buffer)
        self.character_buffer = ""

    def characters(self, data):
        self.character_buffer += data

def parse(filename):
    parser = make_parser()
    handler = MyHandler()
    parser.setContentHandler(handler)
    parser.parse(filename)


CategoryRicottone

Python/XmlSax (last edited 2023-04-11 14:35:15 by DominicRicottone)