Python XML para Dicionário

Python XML para Dicionário

XML (linguagem de marcação extensível) é a linguagem de marcação usada para armazenar os dados. É um formato muito útil para armazenar dados porque define um conjunto de regras que nos permitem armazenar os dados em um formato, que é uma máquina e também como legível por humanos. É amplamente usado para armazenar dados. É uma linguagem de marcação do tipo HTML, pois eles têm o mesmo tipo de estrutura. No entanto, o XML não oferece as tags definidas, mas você pode definir suas próprias tags e criar seu próprio idioma de marcação. Os dados armazenados no documento XML podem ser extraídos e analisados ​​facilmente. Esta é a razão pela qual é mais comumente usado para servidores da web. XML é uma linguagem sensível ao caso.

O Python vem com muitos módulos e funções internos para executar tarefas especializadas. Possui muitas estruturas de dados internas para armazenar e gerenciar os dados. O dicionário é uma das muito úteis estrutura de dados integrada que é usada para armazenar dados no formato do par de valores-chave. Podemos simplesmente converter os dados XML em um dicionário Python. Python fornece o xmlodict módulo para executar as tarefas relacionadas ao XML. Este artigo explica a conversão de XML em um dicionário em Python.

Instalação do módulo xmltodict

Antes de começar com XML para conversão de dicionário, primeiro, precisamos instalar o módulo xmltodict. O XMLTodict pode ser facilmente instalado usando o pacote de índice Python (PIP). Execute o seguinte comando para instalar o módulo xmltodict usando PIP:

pip install xmltodict

Se você estiver usando o PIP3, execute o seguinte comando para instalar o módulo xmltodict:

PIP3 Instale o xmltodict

Levará alguns minutos para instalar o módulo em seu sistema.

Após a instalação bem -sucedida, você receberá uma mensagem “Xmltodict instalado com sucesso.”

Se você estiver usando algum sistema baseado em Debian, execute o seguinte comando para instalar o módulo XMLTodict:

sudo apt install python-xmltodict

O comando acima é para python2. No caso da versão Python3, execute o seguinte comando:

sudo apt install python3-xmltodict

XML para conversão de dicionário

Agora vamos converter um XML para Python Dictionary. Para esse fim, primeiro precisamos importar o módulo xmltodict em nosso script python. O xmltodict.Parse () é uma função interna que converte o XML para o Python Dictionary.

#Importing Módulo XMLTodict
importar xmltodict
#Defining uma string xml
xml_data = "" "

FA18-RSE-012

Kamran
Sattar
Awaisi

[email protected]
4
Msse

Aspmi
ASQA
ASPM
Web semântica


"" "
#conferência xml para dicionário
my_dict = xmltodict.parse (xml_data)
#Detersando o tipo de objeto convertido
print (tipo ("O tipo é:", my_dict)))

Saída

Na saída, pode -se ver que o XML é convertido com sucesso em um dicionário.

Agora vamos acessar os dados usando as chaves do dicionário. O nome das tags são chaves e dados dentro das tags é realmente valor.

#Importing Módulo XMLTodict
importar xmltodict
#Defining uma string xml
xml_data = "" "

FA18-RSE-012

Kamran
Sattar
Awaisi

[email protected]
4
Msse

Aspmi
ASQA
ASPM
Web semântica


"" "
#conferência xml para dicionário
my_dict = xmltodict.parse (xml_data)
#Detersando o tipo de objeto convertido
print ("O tipo é:", tipo (my_dict)))
#acessar o ID do aluno
print (my_dict ['aluno'] ['id']))
#acessar o nome do aluno
print (my_dict ['aluno'] ['nome']))
#acessar o primeiro nome do aluno
print (my_dict ['aluno'] ['nome'] ['primeironame']))
#acessar o nome do meio do aluno
print (my_dict ['aluno'] ['nome'] ['middleName']))
#acessar o sobrenome do aluno
print (my_dict ['aluno'] ['nome'] ['lastName']))
#acessar o e -mail do aluno
print (my_dict ['aluno'] ['email']))
#acessar o semestre do aluno
print (my_dict ['aluno'] ['semestre']))
#acessar a aula de estudante
print (my_dict ['aluno'] ['classe']))
#acessar o sujeito do aluno3
print (my_dict ['aluno'] ['sujeitos'] ['sub3']))

Saída

A saída mostra que eles são acessados ​​com sucesso usando as chaves.

XML para conversão de dicionário usando arquivos

Os dados XML são armazenados principalmente em arquivos. Os arquivos XML são criados com o .Extensão XML. Agora, vamos abrir o arquivo XML e converter os dados em um dicionário python e acessar os valores usando chaves.

Este é o nosso aluno.Arquivo XML.


FA18-RSE-012

Kamran
Sattar
Awaisi

[email protected]
4
Msse

Aspmi
ASQA
ASPM
Web semântica

Agora vamos escrever nosso script python para abrir o arquivo e converter dados XML para Python Dictionary.

#Importing o módulo
importar xmltodict
#Opening o arquivo XML no modo de leitura
com open ("estudante.xml "," r ") como xml_obj:
#Coscando os dados XML para Python Dictionary
my_dict = xmltodict.Parse (xml_obj.ler())
#cling o arquivo
xml_obj.fechar()
#acessar o valor do nome
print (my_dict ['aluno'] ['nome'] ['lastName']))
#acessar o valor do e -mail
print (my_dict ['aluno'] ['email']))
#acessar o valor da classe
print (my_dict ['aluno'] ['classe']))
#acessar o valor do semestre
print (my_dict ['aluno'] ['semestre']))
#acessar o valor do sujeito
print (my_dict ['aluno'] ['sujeitos'] ['sub1']))

Saída

Conclusão

XML é um formato popular para armazenar dados. É mais comumente usado para trocar dados entre servidores da Web e aplicativos de software. Os dados XML podem ser convertidos em um dicionário Python usando o módulo XMLTodict. Este artigo explica a instalação do módulo XMLTodict e o XML para conversão de dicionário com vários exemplos.