gpt4 book ai didi

python - lxml 在解析时删除 标签?

转载 作者:数据小太阳 更新时间:2023-10-29 02:55:14 25 4
gpt4 key购买 nike

我目前正在解析 XML 文档(添加元素、添加属性等)。所以我首先需要在处理它之前解析 XML。然而,lxml似乎正在删除元素 <?xml ...> .例如

from lxml import etree

tree = etree.fromstring('<?xml version="1.0" encoding="utf-8"?><dmodule>test</dmodule>', etree.XMLParser())
print etree.tostring(tree)

会导致

<dmodule>test</dmodule>

有谁知道为什么 <?xml ...>元素被删除?我认为编码标签是有效的 XML。感谢您的宝贵时间。

最佳答案

<?xml> element 是一个 XML 声明,所以它不是严格意义上的元素。它仅提供有关其下方 XML 树的信息。

如果你需要用 lxml 打印出来,这里有一些关于 xmlDeclaration=TRUE 的信息您可以使用的标志。

http://lxml.de/api.html#serialisation

etree.tostring(tree, xml_declaration=True)

关于python - lxml 在解析时删除 <?xml ...> 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3232252/

25 4 0