XML Python

import sys
from xml.sax import saxutils
from xml.sax import make_parser
from xml.sax import handler
class SimpleHandler(saxutils.DefaultHandler):
    # Obtain a locator object
    def setDocumentLocator(self,locator):
        self.locator = locator
    def startElement(self,name,attrs):
        col = self.locator.getColumnNumber()
        line = self.locator.getLineNumber()
        pubid = self.locator.getPublicId()
        sysid = self.locator.getSystemId()
        print 'startElement (%d,%d,%s,%s): %s' % (line,col,pubid,sysid,name)
    def endElement(self,name):
        col = self.locator.getColumnNumber()
        line = self.locator.getLineNumber()
        pubid = self.locator.getPublicId()
        sysid = self.locator.getSystemId()
        print 'endElement (%d,%d,%s,%s): %s' % (line,col,pubid,sysid,name)
    def characters(self,data):
        print 'characters: ', repr(data)
parser = make_parser()
sh = SimpleHandler()
parser.setContentHandler(sh)
parser.parse(sys.argv[1])