Python-XML zu JSON

Python Xml Json



Extensible Markup Language (XML) und JavaScript Object Notation (JSON) sind zwei bekannte Datenformate zur Speicherung von Daten. Sowohl JSON als auch XML ermöglichen es uns, die Daten sowohl für Menschen als auch für Maschinen lesbar zu speichern. JSON ist zunächst eine Art von Datenstruktur, die hauptsächlich zum Austausch von Daten zwischen Servern und Softwareanwendungen verwendet wird. Es speichert die Daten als Schlüssel-Wert-Paare. JSON macht aus den Daten ein Objekt, bei dem Schlüssel-Wert-Paare durch den Doppelpunkt (:) getrennt werden und ein vollständiges Schlüssel-Wert-Paar durch andere durch Kommas getrennt wird.







Darüber hinaus ist XML eine Auszeichnungssprache vom Typ HTML, die auch zum Speichern der Daten verwendet wird. XML bietet jedoch keine vordefinierten Tags. Wir können unsere eigenen Tags erstellen und die Daten speichern. Wie bereits erwähnt, werden sowohl JSON als auch XML verwendet, um Daten zwischen den Servern und Softwareanwendungen auszutauschen. Die beiden Datenformate unterscheiden sich jedoch etwas. JSON ist ein Datenspeicherformat vom Objekttyp, während XML keinen Typ hat. Die XML-Dateien speichern die Daten nur im Zeichenfolgenformat und sind schwerer als die JSON-Datei. Während die JSON-Dateien die Zeichenfolge, Arrays, Zahlen, Gleitkommazahlen und Boolean speichern können.



In diesem Artikel wird die Konvertierung von XML in JSON mit Python erläutert. Das Python xmltodict-Modul wird verwendet, um das XML- in das JSON-Format zu konvertieren.



Die Installation des xmltodict-Moduls

Bevor wir mit der Konvertierung von XML in JSON beginnen, müssen wir das xmltodict-Modul installieren. Das xmltodict-Modul kann mit dem Python-Indexpaket (pip) installiert werden, und es kann in Python 2 und 3 installiert werden. Im Fall von pip2 führen Sie den folgenden Befehl aus, um das xmltodict-Modul zu installieren:





pip install xmltodict

Wenn Sie pip3 verwenden, führen Sie den folgenden Befehl aus, um das xmltodict-Modul zu installieren:

pip3 installieren xmltodict



Führen Sie bei einem Debian-basierten System den folgenden Befehl aus, um das xmltodict-Modul zu installieren:

sudo apt installieren python-xmltodict

Der oben angegebene Befehl ist für Python2 geeignet. Führen Sie bei der Python3-Version den folgenden Befehl aus:

sudo apt installieren python3-xmltodict

XML-zu-JSON-Konvertierung

Lassen Sie uns nun die XML-Daten in das JSON-Format konvertieren. Für diese Konvertierung verwenden wir das xmltodict- und das JSON-Modul. Das json ist ein integriertes Python-Modul. Daher entfällt die Notwendigkeit, sie zu installieren. Die Funktion xmltodict.parse() konvertiert die XML-Daten in ein Python-Wörterbuch. Anschließend nimmt die Funktion json.dumps() das konvertierte Wörterbuchobjekt als Argument und konvertiert es weiter in das JSON-Format. Dies ist also ein zweistufiger Prozess:

Zuerst müssen wir das XML mit der Funktion xmltodict.parse() in ein Python-Wörterbuchobjekt konvertieren.

Zweitens konvertieren wir das Python-Wörterbuchobjekt mit der Funktion json.dumps() in das JSON-Format. In der Funktion json.dumps() wird die indent-Eigenschaft verwendet, um Leerzeichen zwischen den Daten hinzuzufügen.

#importieren der Module
importierenxmltodict
importierenjson
#xml deklarieren
my_xml= '''


1
Die Gärten des Marais
3
Internet
Wahr


2
Golden Tulip Little Palace
4

Internet
Fitnessstudio
Parken
Restaurant

Falsch


'''

#Umwandeln von XML ins Python-Wörterbuch
dict_data=xmltodict.analysieren(my_xml)
#coverting zu json
json_data=json.deponiert(dict_data,Einzug=2)
drucken(json_data)

Ausgabe

Die Ausgabe zeigt, dass das XML erfolgreich in das JSON-Format konvertiert wurde.

Konvertierung von XML-Dateien in JSON-Dateien

Die Daten der XML-Dateien können konvertiert und in die JSON-Datei gespeichert werden. Öffnen wir die XML-Datei, konvertieren die XML-Daten in JSON und speichern sie in einer JSON-Datei.

Das Folgende ist die XML-Datei.

#importieren der Module
importierenjson
importierenxmltodict
# Öffnen der XML-Datei
mit offen('hotels.xml','R') wiexmlfileObj:
#xml-Daten in ein Wörterbuch konvertieren
data_dict=xmltodict.analysieren(xmlfileObj.lesen())
xmlfileObj.nah dran()
#JSON-Objekt mit Wörterbuchobjekt erstellen
jsonObj=json.deponiert(data_dict)

#Speichern von Json-Daten in einer Json-Datei
mit offen('hotels.json', 'in') wiejsonfileObj:
jsonfileObj.schreiben(jsonObj)
jsonfileObj.nah dran()

Ausgabe

Der Python-Interpreter zeigt keinen Fehler an; Dies bedeutet, dass die JSON-Daten erfolgreich in einer .json-Datei gespeichert wurden.

Abschluss

XML und JSON sind zwei beliebte Datenformate zum Speichern von Daten. Die XML-Daten können mit dem xmltodict- und JSON-Modul in das JSON-Format konvertiert werden. In diesem Artikel wird die XML-zu-JSON-Datenkonvertierung mit Beispielen erläutert.