将参数传递给python中的SAX处理程序
问题描述:
是否有任何方法将参数传递给SAX解析器。我得到的解析器如下:将参数传递给python中的SAX处理程序
from xml.sax import make_parser, handler
class parserSAXHandler(handler.ContentHandler):
def __init__(self):
def startElement(self, name, attrs):
def endElement(self,name):
def characters(self, content):
parser = make_parser()
parser.setContentHandler(parserSAXHandler())
doc="PathToDocToBeParsed";
parser.parse(doc);
如何将一个参数传递给处理程序对象?
答
只需让您的__init__
函数接受参数,并将这些参数存储到稍后。
from xml.sax import make_parser, handler
class parserSAXHandler(handler.ContentHandler):
def __init__(self, something):
self.something = something
def startElement(self, name, attrs):
def endElement(self,name):
...
do_something(self.something)
...
def characters(self, content):
parser = make_parser()
parser.setContentHandler(parserSAXHandler(some_argument))
doc="PathToDocToBeParsed";
parser.parse(doc);