>>> for event, element in etree.iterparse(StringIO(xml)): ... # ... do something with the element ... element.clear() # clean up children ... while element.getprevious() is not None: ... del element.getparent()[0] # clean up preceding siblings
Alon Horev, 13.06.2012 20:16:
> from lxml.etree import iterparseThis is a known limitation of the current implementation:
>
> def safe_iterparse(*args, **kwargs):
> for event, element in iterparse(*args, **kwargs):
> try:
> yield (event, element)
> finally:
> element.clear()
http://lxml.de/parsing.html#modifying-the-tree
Stefan
_________________________________________________________________
Mailing list for the lxml Python XML toolkit - http://lxml.de/
lxml@lxml.de
https://mailman-mail5.webfaction.com/listinfo/lxml