1
我正在從一個大的XML文件中獲取信息,我正在使用Python來執行lxml target parsing interface。我希望能夠在解析停止後設置一個限制。下面是一些代碼:是否有可能中斷使用lxml目標解析接口解析中間的大型xml文件?
分析器目標代碼:
class TitleTarget(object):
def __init__(self, limit=None):
self.limit = limit
self.counter = 0
def start(self, tag, attrib):
if self.limit and self.counter > self.limit:
#### BREAK HERE ####
return False
#doProcessing(attrib)
self.counter = self.counter + 1
def end(self, tag):
pass
def data(self, data):
pass
def close(self):
pass
代碼發起解析:
parser = etree.XMLParser(target = TitleTarget(limit))
etree.parse(file, parser)
我知道,處理轉移到 「BREAK HERE」 直插,但我避風港沒有找到任何方法來停止解析。我已經試過返回True, False, [], and raising Error
,似乎沒有工作。它始終處理,直到文件結束。
有沒有辦法停止使用此方法處理BU。
感謝的。你的建議對我很好。 – Lycha