Extrahieren von Daten dieser XML-Datei in einen Python-DatenrahmenPython

Python-Programme
Anonymous
 Extrahieren von Daten dieser XML-Datei in einen Python-Datenrahmen

Post by Anonymous »

Ich kann die Extraktion dieser XML -Daten nicht an DataFrame abrufen, um ordnungsgemäß zu funktionieren.
Dies ist mein XML -Beispiel. In Wirklichkeit habe ich mehrere "Entität", die eine Datenzeile im gewünschten Ergebnis darstellen. Um Platz zu sparen, habe ich hier nur eine Instanz der "Entität" eingefügt: < / p > < b r / > < c o d e > & l t ; E n t i t y C o l l e c t i o n & g t ; < b r / > < b r / > & l t ; E n t i t i e s & g t ; < b r / > < b r / > & l t ; E n t i t y & g t ; < b r / > < b r / > & l t ; A t t r i b u t e s & g t ; < b r / > < b r / > & l t ; K e y V a l u e P a i r O f s t r i n g a n y T y p e & g t ; < b r / > < b r / > & l t ; k e y & g t ; c l i e n t _ n u m b e r & l t ; / k e y & g t ; < b r / > < b r / > & l t ; v a l u e t y p e = & q u o t ; b : s t r i n g & q u o t ; & g t ; A B C 1 2 3 3 4 5 & l t ; / v a l u e & g t ; < b r / > < b r / > & l t ; / K e y V a l u e P a i r O f s t r i n g a n y T y p e & g t ; < b r / > < b r / > & l t ; K e y V a l u e P a i r O f s t r i n g a n y T y p e & g t ; < b r / > < b r / > & l t ; k e y & g t ; m y _ d a t a . c l i e n t _ t y p e



my_type

my_data1

true

123



345









my_data.status



status

my_data1

true

123



67









my_data.date



date

my_data1

true

89

2024-01-01







my_data.country



country

my_data1

true

123



456









client_code

some_code456





my_data.my_data1id



my_data1id

my_data1

true

13

some_code123













my_data.client_type

client123





my_data.status

OK





my_data.country

some_country





some_code456



some-id



ID123








Die Elemente in „key“ (oder in „AttributeLogicalName“) sollten die Header sein. Der „Wert“/„Wert“ sollte die tatsächlichen Daten sein. Dies ist das gewünschte Ergebnis (erste Zeile).
Image

Da die Daten sehr verschachtelt sind, habe ich es mit xml.etree versucht, kam aber nicht weit, da ich nicht sicher bin, wie ich hier vorgehen soll:

Code: Select all

for _, elem in ET.iterparse(my_xml):
if len(elem) == 0:
print(f'{elem.tag} {elem.attrib} text={elem.text}')
else:
print(f'{elem.tag} {elem.attrib}')
Wie erhalte ich das gewünschte Ergebnis?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post