Remove namespace declaration from ElementTree in lxml
Stefan Behnel
stefan.behnel-n05pAM at web.de
Sat Dec 29 09:02:16 EST 2007
More information about the Python-list mailing list
Sat Dec 29 09:02:16 EST 2007
- Previous message (by thread): Remove namespace declaration from ElementTree in lxml
- Next message (by thread): os.system question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Zero Piraeus wrote: >> You can try this: >> >> root = etree.parse(...).getroot() >> new_root = etree.Element(root.tag, root.attrib) >> new_root[:] = root[:] >> >> Note, however, that this will not copy root-level PIs or internal DTD subsets. >> But you can copy PIs and comments by hand. > > Thanks. I considered copying the tree, but didn't bother trying it as > I would expect it to be fairly expensive. Maybe no more expensive than > a regex though. I'll take a look ... It's not actually copying the tree, but it does create a new document, a new root element, and then moves the root children over from the original document, which also involves reference adaptations throughout the entire tree. So it does not come for free. I'd be interested if you can come up with numbers how it compares to the string replacement. Stefan
- Previous message (by thread): Remove namespace declaration from ElementTree in lxml
- Next message (by thread): os.system question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list