今天处理数据集时发现了一个不相关的标签名称,需要进行批量修改
话不多说上代码
"""
使用python xml解析树解析xml文件,批量修改xml文件里object节点下name节点的text
"""
import glob
import xml.etree.ElementTree as ET
path = r'D:\yolo\yolov5_Monocular_ranging-main\data2\annotations' # xml文件夹路径
i = 0
for xml_file in glob.glob(path + '/*.xml'):
# print(xml_file)
tree = ET.parse(xml_file)
obj_list = tree.getroot().findall('object')
for per_obj in obj_list:
if per_obj[0].text == 'fish': # 错误的标签
per_obj[0].text = 'With Helmet' # 修改后的标签名称
i = i+1
tree.write(xml_file) # 将改好的文件重新写入,会覆盖原文件
print('共完成了{}处替换'.format(i))