修改xml的属性值

落日映苍穹つ 2023-02-17 03:18 202阅读 0赞
  1. # coding=utf-8
  2. import os
  3. import os.path
  4. import xml.dom.minidom
  5. #更改xml文件中name和folder属性值
  6. path = "F:/mx_matting/ssd.pytorch-master/data/VOCdevkit/VOC2007/Annotations"
  7. files = os.listdir(path) # 得到文件夹下所有文件名称
  8. for xmlFile in files: # 遍历文件夹
  9. if not os.path.isdir(xmlFile): # 判断是否是文件夹,不是文件夹才打开
  10. print(xmlFile)
  11. # 将获取的xml文件名送入到dom解析
  12. dom = xml.dom.minidom.parse(os.path.join(path, xmlFile)) # 输入xml文件具体路径
  13. root = dom.documentElement
  14. # 获取标签<name>以及<folder>的值
  15. name = root.getElementsByTagName('name')
  16. folder = root.getElementsByTagName('folder')
  17. # 对每个xml文件的多个同样的属性值进行修改。此处将每一个<name>属性修改为plane,每一个<folder>属性修改为VOC2007
  18. for i in range(len(name)):
  19. print(name[i].firstChild.data)
  20. name[i].firstChild.data = 'person'
  21. print(name[i].firstChild.data)
  22. for i in range(len(folder)):
  23. print(folder[i].firstChild.data)
  24. folder[i].firstChild.data = 'VOC2007'
  25. print(folder[i].firstChild.data)
  26. # 将属性存储至xml文件中
  27. with open(os.path.join(path, xmlFile), 'w') as fh:
  28. dom.writexml(fh)
  29. print('已写入')

发表评论

表情:
评论列表 (有 0 条评论,202人围观)

还没有评论,来说两句吧...

相关阅读