将XML文件(所有节点)解析为数据帧(熊猫)
我有许多XML文件,它们具有多种结构和许多节点。我想把它放在一个数据框中。以下是一个例子:将XML文件(所有节点)解析为数据帧(熊猫),xml,pandas,parsing,dataframe,nodes,Xml,Pandas,Parsing,Dataframe,Nodes,我有许多XML文件,它们具有多种结构和许多节点。我想把它放在一个数据框中。以下是一个例子: <?xml version="1.0" encoding="UTF-8"?> <nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">` <NFe> <infNFe Id="NFe13180204501136000136550010008074201
<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">`
<NFe>
<infNFe Id="NFe13180204501136000136550010008074201020771818" versao="3.10">
<ide>
<nNF>807420</nNF>
</ide>
<emit>
<CNPJ>04501136000136</CNPJ>
<IE>041616740</IE>
<CRT>3</CRT>
</emit>
<det nItem="1">
<prod>
<NCM>73170090</NCM>
<CFOP>5405</CFOP>
</prod>
<imposto>
<vTotTrib>38.32</vTotTrib>
<ICMS>
<ICMS60>
<vBCSTRet>0.00</vBCSTRet>
<vICMSSTRet>0.00</vICMSSTRet>
</ICMS60>
</ICMS>
</imposto>
</det>
<det nItem="2">
<prod>
<NCM>73170090</NCM>
<CFOP>5405</CFOP>
</prod>
<imposto>
<vTotTrib>66.92</vTotTrib>
<ICMS>
<ICMS60>
<vBCSTRet>0.00</vBCSTRet>
<vICMSSTRet>2.00</vICMSSTRet>
</ICMS60>
</ICMS>
</imposto>
</det>
</infNFe>
</NFe>
</nfeProc>
我试过这个:
import xmltodict
xml_list = []
pathname = './dados/dadosfile/'
for f in os.listdir(pathname):
with open(pathname + f, 'rb') as arquivo:
doc = xmltodict.parse(arquivo)
xml_list.append(doc)
然而,我不知道如何将dict列表放入数据帧中
谢谢 欢迎来到StackOverflow。请分享您的尝试,以便我们可以帮助您沿着学习曲线前进。请参阅。我尝试使用xmltodict并将所有文件放入dict列表。但我不知道如何将dict列表放入数据帧。请注意代码块的SO格式化键
{}
。您不需要手动包括背面记号和
。
import xmltodict
xml_list = []
pathname = './dados/dadosfile/'
for f in os.listdir(pathname):
with open(pathname + f, 'rb') as arquivo:
doc = xmltodict.parse(arquivo)
xml_list.append(doc)