Maison  >  Article  >  développement back-end  >  Comment xmltodict fonctionne-t-il sur XML en Python ?

Comment xmltodict fonctionne-t-il sur XML en Python ?

WBOY
WBOYavant
2023-05-04 18:04:141155parcourir

Opération de Python xmltodict sur XML

xmltodict est une autre bibliothèque simple dédiée à la transformation de XML en JSON.

Voici un exemple simple de fichier XML : #🎜🎜 #

<?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>

Il s'agit d'un package tiers Utilisez pip pour l'installer avant le traitement

pip install xmltodict

Vous pouvez accéder aux éléments, attributs et valeurs qu'il contient comme suit : #🎜 🎜#
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&#39;many&#39;, [u&#39;elements&#39;, u&#39;more elements&#39;])])
    print(doc["mydocument"]["and"]["many"])   # [u&#39;elements&#39;, u&#39;more elements&#39;]
    print(doc["mydocument"]["plus"]["@a"])    # complex
    print(doc["mydocument"]["plus"]["#text"]) # element as well
xmltodict 也有unparse函数让您可以转回XML。
.

Cette fonction dispose d'un mode streaming adapté au traitement des fichiers qui ne peuvent pas être placés en mémoire. Elle prend également en charge l'espace de noms

Analyse XML Python, module xmltodict

#🎜🎜 #Installer xmltodict : pip3 install xmltodict

demo.py (chaîne XML analysée en forme de dictionnaire):

# 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 &#39;collections.OrderedDict&#39;>  类字典型,可以按照字典方法操作
 
print xml_dict
 
# 遍历
for key, val in xml_dict[&#39;xml&#39;].items():
    print key, "---", val

demo.py (dictionnaire converti en chaîne XML): # 🎜🎜 #
# 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)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer