Python XML til JSON

Python Xml Json



Extensible Markup Language (XML) og JavaScript Object Notation (JSON) er to kjente dataformater for lagring av data. Både JSON og XML lar oss lagre dataene på en slik måte at den er lesbar for mennesker så vel som maskiner. Til å begynne med er JSON en type datastruktur som hovedsakelig brukes til å utveksle data mellom servere og programvare. Den lagrer dataene som nøkkelverdi-par. JSON lager et objekt for dataene der nøkkelverdi-par skilles på grunnlag av kolon (:), og ett komplett nøkkelverdi-par atskilt med andre basert på kommaet.







Videre er XML et HTML -type markeringsspråk som også brukes til å lagre dataene. Men XML gir ikke noen form for forhåndsdefinerte koder. Vi kan lage våre egne tagger og lagre dataene. Som vi diskuterte, brukes både JSON og XML for å utveksle data mellom servere og programvare. Imidlertid er de to dataformatene noe forskjellige. JSON er et datalagringsformat av objekttype, mens XML ikke har noen type. XML -filene lagrer bare dataene i strengformat og tyngre enn JSON -filen. Mens JSON-filene kan lagre strengen, matriser, tall flytende tall og boolsk.



Denne artikkelen forklarer XML til JSON -konvertering ved hjelp av Python. Python xmltodict -modul brukes til å konvertere XML til JSON -format.



Installasjonen av xmltodict -modulen

Før vi begynner å konvertere XML til JSON, må vi installere xmltodict -modulen. Xmltodict -modulen kan installeres ved hjelp av python -indekspakken (pip), og den kan installeres i Python 2 og 3. For pip2, utfør følgende kommando for å installere xmltodict -modulen:





pip installer xmltodict

Hvis du bruker pip3, kjører du følgende kommando for å installere xmltodict -modulen:

pip3 installer xmltodict



Når det gjelder Debian -basert system, kjør deretter følgende kommando for å installere xmltodict -modulen:

sudo apt installer python-xmltodict

Kommandoen ovenfor er egnet for Python2. I tilfelle av Python3 -versjonen, kjør følgende kommando:

sudo apt installer python3-xmltodict

XML til JSON konvertering

La oss nå konvertere XML -dataene til JSON -format. Vi vil bruke xmltodict og JSON -modulen for denne konverteringen. Json er en innebygd Python-modul. Derfor er behovet for å installere dem eliminert. Funksjonen xmltodict.parse () konverterer XML -dataene til Python -ordbok. Deretter tar funksjonen json.dumps () det konverterte ordbokobjektet som et argument og konverterer det videre til JSON -formatet. Så dette er en to -trinns prosess:

Først må vi konvertere XML til Python ordbokobjekt ved å bruke xmltodict.parse () -funksjonen.

For det andre konverterer vi Python -ordbokobjekt til JSON -format ved hjelp av funksjonen json.dumps (). I json.dumps () -funksjonen brukes egenskapen innrykk for å legge til mellomrom mellom dataene.

#import av modulene
importxmltodict
importjson
#deklarere xml
min_xml= '' '


1
Gardens of the Marais
3
Internett
ekte


2
Golden Tulip Little Palace
4

Internett
Treningsstudio
Parkering
Restaurant

Falsk


'' '

#coverting xml til Python -ordbok
dict_data=xmltodict.analysere(min_xml)
#dekning til json
json_data=json.dumper(dict_data,innrykk=2)
skrive ut(json_data)

Produksjon

Utgangen viser at XML -en er konvertert til JSON -format.

XML -fil til JSON -filkonvertering

XML -fildataene kan konverteres og lagres i JSON -filen. La oss åpne XML -filen, konvertere XML -dataene til JSON og lagre dem i en JSON -fil.

Følgende er XML -filen.

#import av modulene
importjson
importxmltodict
# åpner xml -filen
med åpen('hotels.xml','r') somxmlfileObj:
#konvertering av xml -data til ordbok
data_dict=xmltodict.analysere(xmlfileObj.lese())
xmlfileObj.Lukk()
#creating JSON object using dictionary object
jsonObj=json.dumper(data_dict)

#lagre json -data i json -filen
med åpen('hotels.json', 'i') somjsonfileObj:
jsonfileObj.skrive(jsonObj)
jsonfileObj.Lukk()

Produksjon

Python -tolken viser ingen feil; det betyr at JSON -dataene er lagret i en .json -fil.

Konklusjon

XML og JSON er to populære dataformater for lagring av data. XML -dataene kan konverteres til JSON -format ved hjelp av xmltodict og JSON -modulen. Denne artikkelen forklarer XML til JSON datakonvertering med eksempler.