遍历xml并将文本保存为csv

时间:2019-06-11 13:04:35

标签: xml loops elementtree

我需要遍历xml并在city和snm <>中输出文本,然后将它们传输到具有列名city和name的csv中。

我已经在元素树中使用iter()函数进行了尝试,并且在应用print .text时可以看到结果,但是当将它们保存为数据框时,只有名称正确输出,城市才会多次输出相同的名称。

import xml.etree.ElementTree as ET
import csv

tree = ET.parse("EP02736775NWB1.xml")
root = tree.getroot()

with open('patent.csv', 'w', newline='') as patent:
writer = csv.writer(patent)
writer.writerow(['City', 'Name'])

for city in root.iter('city'):
    cities = city.text
    print(cities)
for name in root.iter('snm'):
    names = name.text
    print(names)

    row = (cities, names)
    writer.writerow(row)

    df = pd.read_csv('patent.csv')
    df.head()

我希望数据框有一个包含城市列表的列和一个包含名称列表的列

0 个答案:

没有答案