I\'d like to preserve comments as faithfully as possible while manipulating XML.
I managed to preserve comments, but the contents are getting XML-escaped.
Looks like both answers from @Martin and @sukhbinder didn't work for me... So made this as a workable completed solution on python 3.x
from xml.etree import ElementTree
string = '''
1
2008
141100
'''
class CommentedTreeBuilder(ElementTree.TreeBuilder):
def comment(self, data):
self.start(ElementTree.Comment, {})
self.data(data)
self.end(ElementTree.Comment)
parser = ElementTree.XMLParser(target=CommentedTreeBuilder())
tree = ElementTree.fromstring(string, parser)
print(tree.find("./*[0]").text)
# or ElementTree.parse(filename, parser)