Python XML в JSON

Python Xml Json



Extensible Markup Language (XML) и JavaScript Object Notation (JSON) - два известных формата данных для хранения данных. И JSON, и XML позволяют нам хранить данные таким образом, чтобы их могли читать как люди, так и машины. Начнем с того, что JSON - это тип структуры данных, который в основном используется для обмена данными между серверами и программными приложениями. Он хранит данные в виде пар ключ-значение. JSON создает объект данных, в котором пары «ключ-значение» разделяются двоеточием (:), а одна полная пара «ключ-значение» разделяется другими парами на основе запятой.







Кроме того, XML - это язык разметки типа HTML, который также используется для хранения данных. Но XML не предоставляет никаких предопределенных тегов. Мы можем создавать свои собственные теги и хранить данные. Как мы уже обсуждали, как JSON, так и XML используются для обмена данными между серверами и программными приложениями. Однако эти два формата данных несколько различаются. JSON - это формат хранения данных объектного типа, тогда как XML не имеет типа. Файлы XML хранят данные только в строковом формате и тяжелее, чем файл JSON. В то время как файлы JSON могут хранить строку, массивы, числа с плавающей запятой и логические значения.



В этой статье объясняется преобразование XML в JSON с помощью Python. Модуль Python xmltodict используется для преобразования XML в формат JSON.



Установка модуля xmltodict

Перед тем, как начать преобразование XML в JSON, нам необходимо установить модуль xmltodict. Модуль xmltodict можно установить с помощью пакета индекса Python (pip), и его можно установить в Python 2 и 3. В случае pip2 выполните следующую команду, чтобы установить модуль xmltodict:





pip install xmltodict

Если вы используете pip3, выполните следующую команду, чтобы установить модуль xmltodict:

pip3 установить xmltodict



В случае системы на основе Debian выполните следующую команду для установки модуля xmltodict:

sudo apt установить python-xmltodict

Приведенная выше команда подходит для Python2. В случае версии Python3 выполните следующую команду:

sudo apt установить python3-xmltodict

Преобразование XML в JSON

Теперь давайте преобразуем данные XML в формат JSON. Мы будем использовать модуль xmltodict и JSON для этого преобразования. JSON - это встроенный модуль Python. Таким образом отпадает необходимость в их установке. Функция xmltodict.parse () преобразует данные XML в словарь Python. Затем функция json.dumps () принимает преобразованный объект словаря в качестве аргумента и преобразует его в формат JSON. Итак, это двухэтапный процесс:

Сначала нам нужно преобразовать XML в объект словаря Python с помощью функции xmltodict.parse ().

Во-вторых, мы конвертируем объект словаря Python в формат JSON с помощью функции json.dumps (). В функции json.dumps () свойство indent используется для добавления пробелов между данными.

# импорт модулей
Импортироватьxmltodict
Импортироватьjson
# объявление xml
my_xmlзнак равно '' '


1
Сады Марэ
3
Интернет
Правда


2
Золотой Тюльпан Маленький Дворец
4

Интернет
Спортзал
Стоянка
Ресторан

Ложь


'' '

#coverting XML в словарь Python
dict_dataзнак равноxmltodict.разбирать(my_xml)
#coverting to json
json_dataзнак равноjson.свалки(dict_data,отступзнак равно2)
Распечатать(json_data)

Выход

Выходные данные показывают, что XML успешно преобразован в формат JSON.

Преобразование файла XML в файл JSON

Данные файлов XML можно преобразовать и сохранить в файл JSON. Давайте откроем файл XML, преобразуем данные XML в JSON и сохраним их в файле JSON.

Ниже приведен XML-файл.

# импорт модулей
Импортироватьjson
Импортироватьxmltodict
# открытие xml файла
с участием открытым('hotels.xml','р') в качествеxmlfileObj:
# преобразование XML-данных в словарь
data_dictзнак равноxmltodict.разбирать(xmlfileObj.читать())
xmlfileObj.близко()
# создание объекта JSON с использованием объекта словаря
jsonObjзнак равноjson.свалки(data_dict)

# сохранение данных json в файл json
с участием открытым('hotels.json', 'в') в качествеjsonfileObj:
jsonfileObj.записывать(jsonObj)
jsonfileObj.близко()

Выход

Интерпретатор Python не выдает ошибок; это означает, что данные JSON успешно сохранены в файле .json.

Заключение

XML и JSON - два популярных формата данных для хранения данных. Данные XML можно преобразовать в формат JSON с помощью модуля xmltodict и JSON. В этой статье объясняется преобразование данных XML в JSON с примерами.