python读取xml文件固定标签,并写入txt文件
# 读取XML文件里的图片标签
import xml.dom.minidom
class TXT_W:
def __init__(self,path,paths_name):
self.path = path
self.paths_name = paths_name
def __call__(self):
try:
fh = open(self.path, "w")
for i in range(len(self.paths_name)):
dom = xml.dom.minidom.parse(self.paths_name[i])
root = dom.documentElement
cc=dom.getElementsByTagName('name')
bb=dom.getElementsByTagName('filename')
c1=cc[0]
b1=bb[0]
c2=c1.firstChild.data
b2=b1.firstChild.data
if c2 in 'zhengface':
fh.write('JPEGImages/'+b2+'.jpg'+' '+'0'+'\n')
else:
fh.write('JPEGImages/'+b2+'.jpg'+' '+'1'+'\n')
# print(c2)
# print(b2+'.jpg')
except IOError:
print('Error: 没有找到文件或读取文件失败')
else:
print ('内容写入文件成功')
fh.close()
XML文件样式
<annotation verified="no">
<folder>JPEGImages</folder>
<filename>000003</filename>
<path>D:\SSD算法改进\SSD-Tensorflow-master\VOC2007\JPEGImages\000003.jpg</path>
<source>
<database>Unknown</database>
</source>
<size>
<width>267</width>
<height>410</height>
<depth>3</depth>
</size>
<segmented>0</segmented>
<object>
<name>zhengface</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<Difficult>0</Difficult>
<bndbox>
<xmin>38</xmin>
<ymin>67</ymin>
<xmax>259</xmax>
<ymax>376</ymax>
</bndbox>
</object>
</annotation>
python读取xml文件和标签的内容