我有一个CSV并且想要基于CSV中的每一行生成一个XML文件。 现在它会创建一个XML文件,但只能使用CSV中最后一行的。我如何修改这个脚本来为每一行生成一个XML文件。理想情况下有的文件名基于列:“文件/实体名称”。请参阅下面的内容,了解我目前拥有的功能基于CSV中的行生成XML文件
# CSV module
import csv
# Stuff from the XML module
from xml.etree.ElementTree import Element, SubElement, tostring, ElementTree
import xml.etree.ElementTree as etree
# Topmost XML element
root = Element('root')
number = Element('number')
# Open a file
with open(r'U:\PROJECTS\Technical Graphics\book1.csv') as f:
for row in csv.DictReader(f):
root = Element('gmd:MD_Metadata')
tree = ElementTree(root)
for k, v in row.items():
child = SubElement(root, k)
child.text = v
reader = csv.DictReader(f)
tree.write(open(r'U:\PROJECTS\Technical Graphics\test.xml','w'))
print tostring(root)