首页 > 区块链 > 区块链 > 关于Python量化合约系统开发(源码分析搭建)
def xml_parse(xml_str): class EchoTarget(object): def __init__(self): self.data_list = [] self.data_dict = {} self.tag = '' self.value = '' self.attr = '' def start(self, tag, attrib): # start 在元素打开时触发。数据和元素的子元素仍不可用。 self.tag = tag if dict(attrib): self.attr = dict(attrib) # print("start %s %r" % (tag, dict(attrib))) def end(self, tag): # end 在元素关闭时触发。所有元素的子节点,包括文本节点,现在都是可用的。 if self.value: self.data_list.append(dict( key=self.tag, value=self.value, attr=self.attr )) # print("end %s" % tag) def data(self, dt): # data 触发文本子节点并访问该文本。 if isinstance(dt, str): if dt.strip(): self.value = dt # print("data %r" % dt) def comment(self, text): print("comment %s" % text) def close(self): # close 在解析完成后触发。 return self.data_list # 解析xml字符串 parser = etree.XMLParser(target=EchoTarget()) return etree.XML(xml_str, parser)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70016646/viewspace-2941419/ ,如需转载,请注明出处,否则将追究法律责任。