对于一个学生项目,我需要使用python脚本将XML文件注入另一个文件。我真的不知道该怎么做,我尝试了xml.etree python模块,但没有成功。这是我的问题:
<project>
...
<publish>
<a> Stuff </a>
</publish>
...
</project>
<b> Other stuff </b>
为得到结果,我想将file2.xml注入到file1.xml中的这个确切位置:
<project>
...
<publish>
<a> Stuff </a>
<b> Other stuff </b> <----- Here
</publish>
...
</project>
我该怎么办? 谢谢您的时间
答案 0 :(得分:0)
很大程度上取决于file1.xml的特定内容。如果</publish>
仅发生一次,则完全不需要xml特定的处理。
打开file1.xml进行读取。
打开一个新文件进行写入。
遍历file1.xml中的每一行。
如果当前行是</publish>
,则将多余的行写到新文件中。
将当前行写入新文件。
写完所有行后,将file1.xml重命名为file1.xml.bak,然后将新文件重命名为file1.xml。
with open('file1.xml') as file1, open('newfile.xml', 'w') as file2:
for line in file1:
if line == ' </publish>\n':
file2.write(' <b> Other stuff </b>\n')
file2.write(line)
os.rename('file1.xml', 'file1.xml.bak')
os.rename('newfile.xml', 'file1.xml)