def _parse(self, filebytes):
tf = tempfile.TemporaryFile()
tf.write(filebytes)
tf.seek(0)
events = "start", "start-ns"
root = None
ns_map = []
for event, elem in ET.iterparse(tf, events):
if event == "start-ns":
ns_map.append(elem)
elif event == "start":
if root is None:
root = elem
for prefix, uri in ns_map:
elem.set("{}:{}".format(self.xmlns_str, prefix), uri)
ns_map = []
tf.close()
return ET.ElementTree(root)
评论列表
文章目录