要保留具有特定名称的XML行并删除其他行,可以使用Python的ElementTree库。以下是一个示例代码:
import xml.etree.ElementTree as ET
def filter_xml(file_path, keep_tag):
tree = ET.parse(file_path)
root = tree.getroot()
# 遍历XML的所有元素
for child in root.findall('.//*'):
# 如果元素的标签不是要保留的标签,则删除该元素
if child.tag != keep_tag:
root.remove(child)
# 将过滤后的XML保存回原始文件
tree.write(file_path)
# 示例用法
filter_xml('input.xml', 'keep_tag')
上述代码假设输入的XML文件名为input.xml
,要保留的元素标签为keep_tag
。filter_xml
函数将加载XML文件,遍历所有元素,并删除所有不是keep_tag
的元素。然后,它将过滤后的XML保存回原始文件。
请注意,此代码仅删除了不是特定标签的元素,而未删除它们的子元素。如果需要删除子元素,请相应地修改代码。