批量修改xml文件中的name属性

name属性名可以随意更改,如原本未have_mask,现在改为have_mask。
如原来的xml中name属性为:
在这里插入图片描述
现在需要将name:have_mask更改为face_mask。
代码如下:


```python

import os

import os.path

from xml.etree.ElementTree import parse, Element

#批量修改xml中内容

def test():

    path = "D:\label_mask/"#xml文件所在的目录

    files = os.listdir(path)  # 得到文件夹下所有文件名称

    s = []

    for xmlFile in files:  # 遍历文件夹

        if not os.path.isdir(xmlFile):  # 判断是否是文件夹,不是文件夹才打开

            print

            xmlFile

            pass

        path = "D:\label_mask/"

        print(xmlFile)

        path1 = "D:\label_mask/"+xmlFile#定位当前处理的文件的路径

        newStr = os.path.join(path, xmlFile)

        name = "face_mask"

        dom = parse(newStr)  ###最核心的部分,路径拼接,输入的是具体路径

        root = dom.getroot()

        print(root)

        for obj in root.iter('object'):#获取object节点中的name子节点

            obj.find('name').text=name

            name1 = obj.find('name').text#修改

            print(name1)

        dom.write(path1, xml_declaration=True)#保存到指定文件

        pass

if __name__ == '__main__':

    test()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值