将可能存在格式错误的XML解析为DataFrame的方法如下:
import pandas as pd
import xml.etree.ElementTree as ET
def parse_xml_to_dataframe(xml_string):
try:
root = ET.fromstring(xml_string)
data = []
for child in root:
row = {}
for sub_child in child:
row[sub_child.tag] = sub_child.text
data.append(row)
df = pd.DataFrame(data)
return df
except ET.ParseError:
return pd.DataFrame()
xml_string = "<root><item><name>John</name><age>25</age></item><item><name>Alice</name><age>30</age></item></root>"
df = parse_xml_to_dataframe(xml_string)
解析后的DataFrame如下:
name age
0 John 25
1 Alice 30
这个方法首先尝试使用xml.etree.ElementTree
库解析XML字符串,如果解析失败(可能是由于格式错误),则返回一个空的DataFrame。如果解析成功,将XML的每个子元素转换为字典的键值对,并将所有字典组成的列表转换为DataFrame。
推荐的腾讯云相关产品:腾讯云对象存储(COS),用于存储和管理XML文件。您可以使用COS的API来上传、下载和管理XML文件。产品介绍链接地址:腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云