Fala galera, beleza? estou com uma duvida em leitura de XML em um formato diferente do padrão.
Tenho um programa que gera um banco de dados em XML no formato clientdataset (programação em delphi), ele possui uma estrutura diferente, quando ele é salvo por esse programa vem sem extensão do arquivo, ao abrir que verificamos que se tratava de um xml, queria percorrer esse xml no python podendo adicionar ou remover tags, atributos e elementos.
( com essas linhas de código consigo printar os atributos da tag ROW mas não seleciona-las)
import xml.etree.ElementTree as ET
tree = ET.parse('meuarquivo')
root = tree.getroot()
for child in root:
for child1 in child:
desc = child1.attrib
print(desc)
segue exemplo desse arquivo :
<DATAPACKET Version="2.0">
<METADATA>
<FIELDS>
<FIELD attrname="ID" fieldtype="i4" readonly="true" SUBTYPE="Autoinc"/>
<FIELD attrname="CODICE" fieldtype="string" WIDTH="50"/>
<FIELD attrname="NOTE" fieldtype="string" WIDTH="50"/>
<FIELD attrname="RIM" fieldtype="boolean"/>
<FIELD attrname="DX" fieldtype="r8"/>
<FIELD attrname="DY" fieldtype="r8"/>
<FIELD attrname="DZ" fieldtype="r8"/>
<FIELD attrname="TIPO" fieldtype="string" WIDTH="20"/>
<FIELD attrname="QTA" fieldtype="i4"/>
<FIELD attrname="COSTOMQ" fieldtype="r8"/>
<FIELD attrname="MATORG" fieldtype="string" WIDTH="50"/>
<FIELD attrname="VENA" fieldtype="boolean"/>
<FIELD attrname="COSTO" fieldtype="r8"/>
<FIELD attrname="ONOFF" fieldtype="boolean"/>
<FIELD attrname="COLORE" fieldtype="string" WIDTH="50"/>
<FIELD attrname="QMIN" fieldtype="i4"/>
</FIELDS>
<PARAMS AUTOINCVALUE="41460451" DEFAULT_ORDER=""/>
</METADATA>
<ROWDATA>
<ROW ID="41460447" CODICE="1005" NOTE="LAMINADO STD CRU" RIM="FALSE" DX="2200" DY="1600" DZ="4" TIPO="LAMINCRU4" QTA="0" COSTOMQ="0" MATORG="" VENA="FALSE" ONOFF="FALSE" COLORE="LAMINCRU" QMIN="0"/>
<ROW ID="41460448" CODICE="1009" NOTE="MDF BP BCO DIAMANTE 2F" RIM="FALSE" DX="2745" DY="1830" DZ="6" TIPO="BCODIAMA6" QTA="0" COSTOMQ="0" MATORG="" VENA="FALSE" ONOFF="TRUE" COLORE="BCODIAMA" QMIN="0"/>
<ROW ID="41460449" CODICE="R3383" NOTE="MDF BP SAL ROSA MATT" RIM="TRUE" DX="2746" DY="591,2" DZ="18" TIPO="SALROSAM18" QTA="1" COSTOMQ="0" MATORG="6314" VENA="FALSE" ONOFF="TRUE" COLORE="SALROSAM" QMIN="0"/>
<ROW ID="41460450" CODICE="R3395" NOTE="MDF BP KASHMIR CHESS" RIM="TRUE" DX="512" DY="1830" DZ="25" TIPO="KASHMIRC25" QTA="1" COSTOMQ="0" MATORG="6354" VENA="FALSE" ONOFF="TRUE" COLORE="KASHMIRC" QMIN="0"/>
</ROWDATA>
</DATAPACKET>