xmltodict ist eine weitere einfache Bibliothek, die sich der Umwandlung von XML in JSON widmet.
Hier ist eine einfache Beispiel-XML-Datei:
<?xml version="1.0"?> <mydocument has="an attribute"> <and> <many>elements</many> <many>more elements</many> </and> <plus a="complex"> element as well </plus> </mydocument>
Dies ist ein Paket eines Drittanbieters. Verwenden Sie vor der Verarbeitung zuerst pip to installieren
pip install xmltodict
Sie können wie folgt auf die darin enthaltenen Elemente, Attribute und Werte zugreifen:
import xmltodict with open("test.xml") as fd: # 将XML文件装载到dict里面 doc = xmltodict.parse(fd.read()) print(doc["mydocument"]["@has"]) # an attribute print(doc["mydocument"]["and"]) # OrderedDict([(u'many', [u'elements', u'more elements'])]) print(doc["mydocument"]["and"]["many"]) # [u'elements', u'more elements'] print(doc["mydocument"]["plus"]["@a"]) # complex print(doc["mydocument"]["plus"]["#text"]) # element as well xmltodict 也有unparse函数让您可以转回XML。
Diese Funktion verfügt über einen Streaming-Modus, der für die Verarbeitung von Dateien geeignet ist, die nicht im Speicher abgelegt werden können. Sie unterstützt auch Namespaces
Install xmltodict: pip3 install xmltodict
demo.py (XML-String in wörterbuchähnlich geparst):
# coding:utf-8 import xmltodict # 导入 # XML格式字符串 xml_str = """ <xml> <Name>张三</Name> <age>18</age> </xml> """ xml_dict = xmltodict.parse(xml_str) # 解析xml字符串 print(type(xml_dict)) # <class 'collections.OrderedDict'> 类字典型,可以按照字典方法操作 print xml_dict # 遍历 for key, val in xml_dict['xml'].items(): print key, "---", val
demo.py (Wörterbuch in XML-String konvertiert):
# coding:utf-8 import xmltodict # 导入 # 字典 xml_dict = { "xml": { "name" : u"张三", "age" : 18 } } # 字典转换成XML字符串 # xml_str = xmltodict.unparse(xml_dict) xml_str = xmltodict.unparse(xml_dict, pretty=True) # pretty表示友好输出(有换行) print(xml_str)
Das obige ist der detaillierte Inhalt vonWie funktioniert xmltodict mit XML in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!