python批量修改xml文件的属性(filename/path)

一、修改文件路径path属性

这里路径可以自定义,根据自己实际需求更改即可:

import xml.dom.minidom
import os

path = r'F:\Pycharm Community\foods\xml'  # xml文件存放路径
sv_path = r'F:\Pycharm Community\foods\xml1'  # 修改后的xml文件存放路径
files = os.listdir(path)
cnt = 1

for xmlFile in files:
    dom = xml.dom.minidom.parse(os.path.join(path, xmlFile))  # 打开xml文件,送到dom解析
    root = dom.documentElement  # 得到文档元素对象
    item = root.getElementsByTagName('path')  # 获取path这一node名字及相关属性值
    for i in item:
        i.firstChild.data = 'C:\\Users\\Desktop\\' + str(cnt).zfill(6) + '.jpg'  # xml文件对应的图片路径

    with open(os.path.join(sv_path, xmlFile), 'w') as fh:
        dom.writexml(fh)
    cnt += 1

二、修改文件名filename属性

这里默认是根据文件名称进行修改,如000001.jpg.

import xml.dom.minidom
import os

path = r'F:\Pycharm Community\foods\xml1'  # xml文件存放路径
sv_path = r'F:\Pycharm Community\foods\xml2'  # 修改后的xml文件存放路径
files = os.listdir(path)

for xmlFile in files:
    dom = xml.dom.minidom.parse(os.path.join(path, xmlFile))  # 打开xml文件,送到dom解析
    root = dom.documentElement  # 得到文档元素对象
    names = root.getElementsByTagName('filename')
    a, b = os.path.splitext(xmlFile)  # 分离出文件名a
    for n in names:
        n.firstChild.data = a + '.jpg'
    with open(os.path.join(sv_path, xmlFile), 'w') as fh:
        dom.writexml(fh)

注:这里给出了两个示例,其他属性可以仿照着改动即可。

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页