您的位置:首页 > 编程语言 > Python开发

Python 修改xml文件内容——批量更改Labelimg标签.xml文件路文件夹名

2019-08-28 11:03 2341 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/max_u94/article/details/100115128

Python 修改xml文件内容——批量更改Labelimg标签文件路文件夹名

目的

对一个文件夹中全部Labelimg标记的xml文件中的文件路径以及文件夹名,使用python脚本进行批量修改。

原始文件与想要的结果对比图

原始文件截图
黄色荧光区域为需要更改的内容

修改后内容截图
修改后xml文件中floder以及path中的内容都被重置

代码实现

import xml.etree.ElementTree as ET
import os
path="F:\\VOC2018\\Annotations\\" # xml文件存放路径
sv_path="F:\\VOC2018\\Annotations1\\" # 修改后的xml文件存放路径
imgpath="F:\\VOC2018\\ImageSets\\"#新的path路径
files=os.listdir(path) #读取路径下所有文件名
for xmlFile in files:
if xmlFile.endswith('.xml'):
tree=ET.ElementTree(file = path+xmlFile) #打开xml文件,送到tree解析
root=tree.getroot() #得到文档元素对象

root[0].text='ImageSets'
#root[0].text是annotation下第一个子节点中内容,直接赋值替换文本内容
root[2].text=imgpath+xmlFile
#替换后的内容保存在内存中需要将其写出
tree.write(sv_path+xmlFile)

xml.etree.ElementTree

关于xml.etree.ElementTree库简单使用,可以参考Python 标准库之 XML(上)以及Python 标准库之 XML(下)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: