Manejo de archivos XML en Python - Detodopython.com

BUSCADOR

Aprenda Como descargar

18/02/2022

Manejo de archivos XML en Python

 Manejo de archivos XML en Python

XML, siglas en inglés de eXtensible Markup Language ("lenguaje de marcas Extensible"), es un meta-lenguaje que permite definir lenguajes de marcas desarrollado por el World Wide Web Consortium (W3C) utilizado para almacenar datos en forma legible. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones deben comunicarse entre sí o integrar información.

 El  archivo a usar será datos.xml

 
  <?xml version="1.0"?>
  <empresa>
    <empleado id="1">
       <nombre>Carlos Díaz</nombre>
       <username>carlos</username>
       <password>223344</password>
     </empleado>
     <empleado id="2">
       <nombre>Mariela Pérez</nombre>
       <username>mperez</username>
       <password>112233</password>
     </empleado>
  </empresa>
  

 Importamos minidom.

  
  from xml.dom import minidom
  
  doc = minidom.parse("/ruta/datos.xml")
  nombre = doc.getElementsByTagName("nombre")[0]
  print(nombre.firstChild.data)
  empleados = doc.getElementsByTagName("empleado")
 for empleado in empleados:
     sid = empleado.getAttribute("id")
     username = empleado.getElementsByTagName("username")[0]
     password = empleado.getElementsByTagName("password")[0]
     print("id:%s " % sid)
     print("username:%s" % username.firstChild.data)
     print("password:%s" % password.firstChild.data) 
    

Para comenzar el parseo usamos:

 doc = minidom.parse(«/ruta/datos.xml»)

Es posible encontrar cualquier nodo del documento como lo hacemos en la línea con la función  
  nombre = doc.getElementsByTagName(«nombre»)[0]>
Obtener una lista de nodos y sus atributos: 
  sid = empleado.getAttribute(«id»)
O  bien obtener otros nodos y su respectivo contenido de texto: 
  username = empleado.getElementsByTagName(«username»)[0]

Como se habrán dado cuenta, con Python es muy sencillo leer los archivos de XML.

No hay comentarios:

Publicar un comentario

Post Top Ad