我有一个XML文件,我正在使用python的lxml.objectify
库阅读。
我没有找到获取XML评论内容的方法:
<data>
<!--Contents 1-->
<some_empty_tag/>
<!--Contents 2-->
</data>
我能够检索评论(有更好的方法吗?xml.comment[1]
似乎不起作用):
xml = objectify.parse(the_xml_file).getroot()
for c in xml.iterchildren(tag=etree.Comment):
print c.???? # how do i print the contets of the comment?
# print c.text # does not work
# print str(c) # also does not work
正确的方法是什么?
答案 0 :(得分:0)
您只需要将子项转换回字符串以提取注释,如下所示:
In [1]: from lxml import etree, objectify
In [2]: tree = objectify.fromstring("""<data>
...: <!--Contents 1-->
...: <some_empty_tag/>
...: <!--Contents 2-->
...: </data>""")
In [3]: for node in tree.iterchildren(etree.Comment):
...: print(etree.tostring(node))
...:
b'<!--Contents 1-->'
b'<!--Contents 2-->'
当然,您可能想要剥离不需要的包装。