发布时间:2019-09-07 08:12:33编辑:auto阅读(2741)
#!/usr/bin/python
#XMLtoCSV.py
#encoding:utf-8
import csv, os
from xml.dom.minidom import parse
def createCSVFile(filePrefix):
csvFile = open(filePrefix+'.csv', 'wb') #注意是二进制写入,否则会有多余空格
csvWriter = csv.writer(csvFile)
bWriteHead = False
xmlFile = open(filePrefix+'.xml')
domTree = parse(xmlFile)
#print domTree
root = domTree.documentElement
#print dir(collection)
for node in root.childNodes:
if node.nodeType == node.ELEMENT_NODE:
#print node.nodeName
element = {}
for key in node.attributes.keys():
value = node.attributes.get(key).value
element[key] = value
if len(element) > 0:
if bWriteHead == False:
csvWriter.writerow(tuple(element.keys()))
bWriteHead = True
csvWriter.writerow(tuple(element.values()))
else:
print node.attributes
csvFile.close()
xmlFile.close()
def main():
for root, dirs, files in os.walk(os.getcwd()):
print root, dirs, files
for fname in files:
index = fname.find('.xml')
if index > 0:
#print index, fname[:index]
createCSVFile(fname[:index])
print "Transform " + fname + " OK!"
if __name__ == '__main__':
main()
input("Game Over!")
上一篇: python 外部命令执行--OS
下一篇: python之syslog模块
52054
51920
42147
38994
33493
30444
29080
24110
24018
22369
117°
150°
163°
148°
174°
161°
182°
187°
186°
199°