Руководство по парсингу XML Python: чтение XML-файла

Руководство по парсингу XML Python: чтение XML-файла

От автора: что такое XML? XML расшифровывается как расширяемый язык разметки. Он был разработан для хранения и передачи небольших и средних объемов данных и широко используется для обмена структурированной информацией.

Python позволяет парсировать и изменять XML-документ. Для парсинга XML-документа вам необходимо иметь в памяти весь XML-документ. В этом руководстве мы рассмотрим, как в Python использовать класс XML minidom для загрузки и парсинга XML-файла.

Мы узнаем:

Как парсить XML с помощью minidom

Как создать XML-узел

Как парсить XML с помощью ElementTree

Как парсить XML с помощью minidom

Мы создали образец XML-файла, который мы собираемся парсить.

Шаг 1) Внутри файла мы видим имя, фамилию, дом и навыки (SQL, Python, Testing и Business)

Шаг 2) После того, как мы спарсим документ, мы выведем «имя узла» корня документа и «первый дочерний тэг». Tagname и nodename являются стандартными свойствами файла XML.

Импортируйте модуль xml.dom.minidom и объявите файл для парсинга (myxml.xml)

Этот файл содержит основную информацию о сотруднике, такую как имя, фамилия, адрес, навыки и т. д.

Мы используем функцию parse в minidom XML для загрузки и парсинга файла XML

У нас есть переменная doc, doc получает результат функции parse

Мы хотим вывести имя файла и дочерний тэг, поэтому объявляем это в функции print

Запустите код. Он выведет имя узла (#document) из файла XML и первый дочерний тэг (employee) из файла XML.

Примечание: Nodename и tagname являются стандартными именами или свойствами XML dom. В случае, если вы не знакомы с этим типом именования.

Шаг 3) Мы также можем вызвать список тегов XML из документа XML и вывести его. Здесь мы вывели набор навыков, таких как SQL, Python, Testing и Business.

Объявление переменной expertise, из которой мы будем извлекать всю информацию сотрудника

Используем стандартную функцию dom с именем «getElementsByTagName»

Она получит все элементы с именем skill

Объявляем цикл для каждого из тегов skill

Запустите код - он выдаст список из четырех навыков

Как создать XML-узел

Мы можем создать новый атрибут с помощью функции «createElement», а затем добавить этот новый атрибут или тег к существующим тегам XML. Мы добавили новый тег «BigData» в XML-файл.

Вам нужно написать код, чтобы добавить новый атрибут (BigData) в существующий тег XML

Затем вам нужно вывести тег XML с новыми атрибутами, добавленными к существующему тегу XML.

Чтобы добавить новый XML и вставить его в документ, мы используем код «doc.create elements»

Этот код создаст новый тег skill для нашего нового атрибута «Big-data»

Добавьте этот тег в first child документа (employee)

Запустите код - появится новый тег «big data» с другим списком навыков.

Пример XML-парсера

Пример Python 2

Пример Python 3

Как парсить XML с помощью ElementTree

ElementTree - это API для управления XML. ElementTree - это простой способ обработки файлов XML. В качестве примера данных мы используем следующий XML-документ:

Чтение XML с использованием ElementTree

Сначала нам нужно импортировать модуль xml.etree.ElementTree.

Теперь давайте выберем корневой элемент:

Ниже приведен полный код для чтения данных XML:

Заключение

Python позволяет парсить весь XML-документ за один раз, а не только одну строку за раз. Для парсинга XML-документа вам необходимо иметь в памяти весь документ.

Парсинг XML-документа

Импортируйте xml.dom.minidom

Используйте функцию parse для парсинга документа (doc = xml.dom.minidom.parse(имя файла);

Вызовите список тегов XML из документа XML с использованием кода (=doc.getElementsByTagName(«имена тегов xml»)

Создание и добавление нового атрибута в XML-документ

Используйте функцию "createElement"

Источник: https://www.guru99.com

Редакция: Команда webformyself.

Хотите изучить регулярные выражения на PHP?

Посмотрите 12-ти часовой видео курс по регулярным выражениям на PHP!

Смотреть

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий