在文档开头添加注释

时间:2019-07-04 11:06:00

标签: python elementtree

使用ElementTree,如何在XML声明下方和根元素上方放置注释?

我尝试过root.append(comment),但这将注释放置为root的最后一个孩子。我可以在root的父母后面加上注释吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

以下是使用lxml方法通过addprevious()在所需位置(在XML声明之后,根元素之前)添加注释的方法。

from lxml import etree

root = etree.fromstring('<root><x>y</x></root>')
comment = etree.Comment('This is a comment')
root.addprevious(comment)  # Add the comment as a preceding sibling

etree.ElementTree(root).write("out.xml",
                              pretty_print=True,
                              encoding="UTF-8",
                              xml_declaration=True)

结果(out.xml):

<?xml version='1.0' encoding='UTF-8'?>
<!--This is a comment-->
<root>
  <x>y</x>
</root>

答案 1 :(得分:-1)

这里

display: -webkit-box

输出

import xml.etree.ElementTree as ET

root = ET.fromstring('<root><e1><e2></e2></e1></root>')
comment = ET.Comment('Here is a  Comment')
root.insert(0, comment)
ET.dump(root)