Python XML to JSON – Linux Hint

Extensible Markup Language (XML) and JavaScript Object Notation (JSON) are two known data storage formats. Both JSON and XML enable us to store data in such a way that it can be read by both a person and a machine. First of all, JSON is a kind of data structure that is mainly used to exchange data between servers and software applications. It stores data in key value pairs. JSON creates a data object in which key value pairs are separated by colon (:) and an entire key value pair is separated by others based on a comma.

In addition, XML is an HTML markup language that is also used for storing data. However, XML does not provide predefined tags. We can create our own tags and store data. As mentioned before, both JSON and XML are used for the exchange of data between servers and software applications. However, the two data formats differ slightly from each other. JSON is a data storage format for object types, whereas XML has no type. XML files only store data in string format and are heavier than JSON files. While JSON files can store strings, arrays, floating-point songs and Boolean songs.

This article explains how to convert XML to JSON using Python. The Python xmltodict module is used to convert XML to JSON format.

Installation of the xmltodict module

Before we start converting XML to JSON, we need to install the xmltodict module. The xmltodict module can be installed together with the piping package and can also be installed on Python 2 and 3. In the case of pip2, run the following command to install the xmltodict module:

If you are using pip3, run the following command to install the xmltodict module:

In the case of a Debian-based system, run the following command to install the xmltodict module

install sudo apt python-xmltodict

The command above has been adapted to Python2. Run the following command for the Python3 version:

install sudo apt python3-xmltodict

ConvertXML to JSON

We now want to convert the XML data to JSON format. For this conversion we will use the xmltodict and JSON module. Json is a built-in Python module. So there is no need to install them. The xmltodict.parse() function converts XML data into a Python dictionary. Next, the function json.dumps() accepts the converted Dictionary object as an argument and converts it to JSON format. So it’s a two-step process:

We first need to convert the XML file to a Python dictionary object with the function xmltodict.parse().

Next, we convert the Python dictionary object to the JSON format using the function json.dumps(). In the function json.dumps(), the property indent is used to add spaces between the data.

#import modulesimport xmltodictimport json#delaration xmlmy_xml = Les Jardins du Marais3InternetTrue 2Golden Tulip Little Palace4 InternetGymParkingRestaurant Lie # Cover xml in Python-Dictionarydict_data = xmltodict.parse(my_xml)#Cover jsonjson_data = json.dumps(dict_data, indented=2) 1st9 print(json_data)

Get off.

The output shows that the XML has been successfully converted to the JSON format.

Convert XMLfile to JSONfile

Data from XML files can be converted and saved as a JSON file. Open the XML file, convert the XML data to JSON, and save it in the JSON file.

Below is an XML file.

# import modules
json import
xmltodict import
# open xml file
with open(hotels.xml,r) as xmlfileObj:
# convert xml data to dictionary
data_dict = xmltodict.parse(
# create a JSON object with the Dictionary object
jsonObj= json.dumps(data_dict)

# store the JSON data in the JSON file
with open(w) as JSONfileObj:

Get off.

The Python interpreter does not display an error; this means that the JSON data is successfully stored in the .json file.


XML and JSON are two popular data storage formats. XML data can be converted to JSON format using xmltodict and the JSON module. This article uses examples to explain how to convert XML data to JSON.

Related Tags:

xml to json python standard library,xmljson rpm,xmljson gdata,python lxml to json,xml to json badgerfish online converter,python xmltodict,xmltodict,python xml to dict elementtree,xmltodict ordereddict,how can i convert xml to json in python,importerror: no module named xmltodict,python dict to xml