I am trying to build a python script that will take in an XML document and remove all of the comment blocks from it.
I tried something along the lines of:
tree = ElementTree()
tree.parse(file)
commentElements = tree.findall('//comment()')
for element in commentElements:
element.parentNode.remove(element)
Doing this yields a weird error from python: "KeyError: '()'
I know there are ways to easily edit the file using other methods ( like sed ), but I have to do it in a python script.
'//comment()'does not seem to be a valid search path format and is causing the KeyError. Can you please include that XML sample and expand on the pattern you are trying to catch?comment()is an XPath node test that is not supported by ElementTree. Try lxml, which has full support for XPath 1.0.