tgoop.com/PythonPortal/4390
Create:
Last Update:
Last Update:
XML parsing
Вот три инструмента, которые помогут удобно разбирать и обрабатывать XML-документы:
> untangle — превращает XML в Python-объект
Простой способ получить доступ к тегам и атрибутам через точки.
import untangle
obj = untangle.parse('file.xml')
print(obj.root.child['name'])
> xmltodict — делает XML похожим на JSON
Преобразует XML в обычный словарь Python. Поддерживает атрибуты (
@
), текст (#text
), namespaces
, обратное преобразование (unparse
) и стриминг для больших файлов.import xmltodict
with open('file.xml') as f:
doc = xmltodict.parse(f.read())
print(doc['mydocument']['@has'])
> xmlschema — для работы с XSD-схемами
Позволяет валидировать XML по схеме, учитывает типы данных, удобно кодирует и декодирует.
from xmlschema import XMLSchema
schema = XMLSchema("schema.xsd")
data = schema.decode("file.xml")
Полезно для конфигов, API, валидации и парсинга сложных XML-документов