我编写了一个 Python 脚本来创建一些 XML,但我没有找到在 Python 中编辑标题的方法。
基本上,而不是将其作为我的标题:
<?xml version="1.0" ?>
我需要这个:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
我尽我所能对此进行了调查,但发现无法从 Python 中添加独立状态。所以我想我必须在创建文件后检查文件,然后替换文本。我在几个地方读到了我应该远离使用 readlines() 的地方,因为它可能会破坏 XML 格式。
目前,我必须执行此操作的代码(我从另一篇关于使用 Python 编辑 XML 的 Stackoverflow 帖子中获得)是:
doc = parse('file.xml')
elem = doc.find('xml version="1.0"')
elem.text = 'xml version="1.0" encoding="UTF-8" standalone="no"'
这为我提供了一个 KeyError。我尝试调试它无济于事,这让我相信也许 XML 标题不应该以这种方式进行编辑。或者我的代码是错误的。
如果有人好奇(或者奇迹般地知道如何将独立状态插入 Python 代码),这是我编写 xml 文件的代码:
with open('file.xml', 'w') as f:
f.write(doc.toprettyxml(indent=' '))
有些人不喜欢“toprettyxml”,但以我相对基础的水平,这似乎是最好的选择。
无论如何,如果有人可以提供一些建议或见解,我将非常感激。