views:

437

answers:

1

I'm parsing an xml file using Python's ElementTree, like that:

et = ElementTree(file=file("test.xml"))

test.xml starts with a few lines of xml comments.

Is there a way to get those comments from et?

+2  A: 

For ElementTree 1.2.X there is an article on Reading processing instructions and comments with ElementTree (http://effbot.org/zone/element-pi.htm).


EDIT:

The alternative would be using lxml.etree which implements the ElementTree API. A quote from ElementTree compatibility of lxml.etree :

ElementTree ignores comments and processing instructions when parsing XML, while etree will read them in and treat them as Comment or ProcessingInstruction elements respectively.

f3lix
unfortunately, there is no CommentHandler in the version that ships with python 2.5
Paul Oyster
Also, it is too risky to use internal library stuff, as the code should work with future versions of python.
Paul Oyster
Those are legitimate arguments. I edited my answer and added an alternative solution.
f3lix