在xml python

时间:2019-08-07 09:26:42

标签: python xml

我有一个xml文件,其中包含一个根元素和子元素的子元素。

例如:

<root>
    <subRoot>
    <Modified name="Set" text="Bla">
      <Action name="Bla2"/>
    </Modified>
</subRoot>
</root>

如果我想删除“已修改”下的所有“动作”标签,该怎么做? 谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用各种库,此示例使用的是beautifulsoup

data = '''<root>
    <subRoot>
    <Modified name="Set" text="Bla">
      <Action name="Bla2"/>
    </Modified>
</subRoot>
</root>'''

from bs4 import BeautifulSoup

soup = BeautifulSoup(data, 'xml')

# selects all tags <Action> under <Modified>
for tag in soup.select('Modified Action'):
    tag.extract() # delete it!

print(soup.prettify())

打印:

<?xml version="1.0" encoding="utf-8"?>
<root>
 <subRoot>
  <Modified name="Set" text="Bla">
  </Modified>
 </subRoot>
</root>