Python XML kay JSON

Python Xml Json



Ang Extensible Markup Language (XML) at JavaScript Object Notation (JSON) ay dalawang tanyag na format ng data para sa pag-iimbak ng data. Pinapayagan kaming kapwa ng JSON at XML na mag-imbak ng data sa paraang nababasa ng tao pati na rin ang mga machine. Upang magsimula, ang JSON ay isang uri ng istraktura ng data na pangunahing ginagamit upang makipagpalitan ng data sa pagitan ng mga server at aplikasyon ng software. Iniimbak nito ang data bilang mga pares na key-value. Ginagawa ng JSON ang isang object ng data kung saan ang mga pares ng key-value ay pinaghiwalay batay sa colon (:), at isang kumpletong pares ng key-value na pinaghihiwalay ng iba batay sa kuwit.







Bukod dito, ang XML ay isang wikang markup na uri ng HTML na ginagamit din upang maiimbak ang data. Ngunit, ang XML ay hindi nagbibigay ng anumang uri ng mga paunang natukoy na mga tag. Maaari kaming lumikha ng aming sariling mga tag at maiimbak ang data. Tulad ng tinalakay namin, ang parehong JSON at XML ay ginagamit upang makipagpalitan ng data sa pagitan ng mga server at application ng software. Gayunpaman, medyo magkakaiba ang dalawang format ng data. Ang JSON ay isang format ng imbakan ng uri ng data ng uri ng object, samantalang ang XML ay walang uri. Ang XML file ay nag-iimbak lamang ng data sa format ng string at mas mabibigat kaysa sa JSON file. Samantalang maaaring maiimbak ng mga file na JSON ang mga string, arrays, numero na lumulutang-point na numero, at Boolean.



Ipinapaliwanag ng artikulong ito ang XML sa JSON conversion gamit ang Python. Ang module ng Python xmltodict ay ginagamit upang mai-convert ang XML sa format na JSON.



Ang pag-install ng xmltodict module

Bago simulang i-convert ang XML sa JSON, kailangan naming i-install ang xmltodict module. Ang xmltodict module ay maaaring mai-install gamit ang python index package (pip), at maaari itong mai-install sa Python 2 at 3. Sa kaso ng pip2, ipatupad ang sumusunod na utos upang mai-install ang xmltodict module:





pip install xmltodict

Kung gumagamit ka ng pip3, pagkatapos ay patakbuhin ang sumusunod na utos upang mai-install ang xmltodict module:

pip3 install xmltodict



Sa kaso ng Debian based system, pagkatapos ay patakbuhin ang sumusunod na utos upang mai-install ang xmltodict module:

sudo apt i-install ang python-xmltodict

Ang utos na ibinigay sa itaas ay angkop para sa Python2. Sa kaso ng bersyon ng Python3, patakbuhin ang sumusunod na utos:

sudo apt i-install ang python3-xmltodict

XML sa JSON conversion

Ngayon ay i-convert natin ang data ng XML sa format na JSON. Gagamitin namin ang xmltodict at JSON module para sa conversion na ito. Ang json ay isang built-in na module ng Python. Samakatuwid, ang pangangailangan na mai-install ang mga ito ay tinanggal. Ang pagpapaandar ng xmltodict.parse () ay nagko-convert ng XML data sa diksyunaryo ng Python. Pagkatapos, ang pag-andar ng json.dumps () ay tumatagal ng na-convert na object ng diksyonaryo bilang isang pagtatalo at karagdagang binago ito sa format na JSON. Kaya't ito ay isang proseso ng dalawang hakbang:

Una kailangan naming i-convert ang XML sa bagay ng diksyunaryo ng Python gamit ang xmltodict.parse () function.

Pangalawa, iko-convert namin ang object ng diksyunaryo ng Python sa format na JSON gamit ang json.dumps () function. Sa pagpapaandar ng json.dumps (), ang pag-aari ng indent ay ginagamit upang magdagdag ng mga puwang sa pagitan ng data.

#import ang mga module
angkatxmltodict
angkatjson
#declaring the xml
my_xml= '' '


1
Ang Mga Halamanan ng Marais
3
Internet
Totoo


2
Golden Tulip Little Palace
4

Internet
gym
Paradahan
Restawran

Mali


'' '

# pagkatuklas ng xml sa diksyunaryo ng Python
dict_data=xmltodict.parse(my_xml)
#covering kay json
json_data=jsonnagtatapon(dict_data,indent=2)
mag-print(json_data)

Paglabas

Ipinapakita ng output na matagumpay na na-convert ang XML sa format na JSON.

XML file sa JSON file conversion

Ang data ng XML file ay maaaring mai-convert at mai-save sa JSON file. Buksan natin ang XML file, i-convert ang data ng XML sa JSON at iimbak ito sa isang JSON file.

Ang sumusunod ay ang XML file.

#import ang mga module
angkatjson
angkatxmltodict
# pagbubukas ng xml file
kasama si buksan('hotels.xml','r') bilangxmlfileObj:
# nagko-convert ng xml data sa diksyunaryo
data_dict=xmltodict.parse(xmlfileObj.basahin())
xmlfileObj.malapit na()
#nilikha ang object ng JSON gamit ang object ng diksyunaryo
jsonObj=jsonnagtatapon(data_dict)

# pag-iimbak ng json data sa json file
kasama si buksan('mga hotel.json', 'sa') bilangjsonfileObj:
jsonfileObj.sumulat(jsonObj)
jsonfileObj.malapit na()

Paglabas

Ang interpreter ng Python ay hindi nagpapakita ng anumang error; nangangahulugan ito na ang data ng JSON ay matagumpay na nai-save sa isang .json file.

Konklusyon

Ang XML at JSON ay dalawang tanyag na format ng data upang mag-imbak ng data. Ang data ng XML ay maaaring mai-convert sa format na JSON gamit ang xmltodict at JSON module. Ipinapaliwanag ng artikulong ito ang XML sa JSON data conversion na may mga halimbawa.