I use code below to convert XML to CSV file
but the result is : AttributeError: 'NoneType' object has no attribute 'text'
Can anyone help?
import xml.etree.ElementTree as Xet
import pandas as pd
cols = ["Id", "UserId", "Name", "Date", "Class", "TagBased"]
rows = []
xmlparse = Xet.parse('Badges.xml')
root = xmlparse.getroot()
for i in root:
Id = i.find("Id").text
userId = i.find("UserId").text
name = i.find("Name").text
date = i.find("Date").text
Class = i.find("Class").text
tagBased = i.find("TagBased").text
rows.append({
"Id": Id,
"UserId": userId,
"Name": name,
"Date": date,
"Class": Class,
"TagBased": tagBased
})
df = pd.DataFrame(rows, columns=cols)
# Writing dataframe to csv
df.to_csv('output.csv')
MY data like:
<badges>
<row Id="1" UserId="2" Name="Autobiographer" Date="2014-04-17T00:58:09.973" Class="3" TagBased="False" />
<row Id="2890885" UserId="6775155" Name="Yearling" Date="2021-12-05T03:07:26.740" Class="2" TagBased="False" />
<row Id="2890886" UserId="5298879" Name="Yearling" Date="2021-12-05T03:07:26.740" Class="2" TagBased="False" />
</badges>
i.attrib.get("Id"). Let me know if it works. And please do not add additional info in comments, edit the question instead!