quiero conseguir sacar informacion desde un xml y luego tras modificarla
volverla a grabar en el mismo xml...
estoy aprendiendo python y no se nada de xml, asi que supongo que es muy
facil para la mayoria de ustedes.
Bueno les adjunto el ficher py donde estoy haciendo las pruebas y el archivo
xml...
gracias por su ayuda.
# -*- coding: cp1252 -*-
from xml.dom import minidom
import os
##localizo el nodo arbol usuario
datosusur =
minidom.parse('persona.xml').childNodes[0].childNodes[1].childNodes[1]
##localizo el nombre de ese arbol
usur = datosusur.getElementsByTagName('nombre')[0].childNodes[0]
##imprimo el valor de el campo nombre de usuario
print usur.nodeValue
##le cambio el valor
usur.nodeValue = 'no te cambias?'
##confirmo que ha cambiado
print usur.nodeValue
##Abro el fichero en donde guardar el documento XML.
fichero = open(('persona.xml'), "w")
##copio el arbol xml completo
raiz_local = arbol_global.documentElement
##confirmo que es correcta la operacion
##print arbol_glb.toxml()
##lo copio al fichero ... pero no me hace nada ... básicamente me lo borra
completo. y no le graba el encabezado de la codificación ISO
raiz_local.writexml((fichero), encoding="iso-8859-1")
##cierro el fichero
fichero.close()
<?xml version="1.0" encoding="iso-8859-1"?>
<persona>
<usuario>
<datos_pesonales>
<nombre>nombre usuario</nombre>
<primerapellido>1apellido usuario</primerapellido>
<segundoapellido>2apellido usuario</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<poblacion>madrid</poblacion>
<provincia>madrid</provincia>
<telefono>555555555</telefono>
</datos_pesonales>
<datosempresa>
<nombreempresa>0</nombreempresa>
<colegio>0</colegio>
<numerocolegiado>1</numerocolegiado>
</datosempresa>
</usuario>
<intervinientes>
<arquitecto1>
<nombre>nombre arq1</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>arq1</numerocolegiado>
</arquitecto1>
<arquitecto2>
<nombre>nombre arq2</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>arq2</numerocolegiado>
</arquitecto2>
<arquitecto3>
<nombre>nombre arq3</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>arq3</numerocolegiado>
</arquitecto3>
<arquitecto4>
<nombre>nombre arq4</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>arq4</numerocolegiado>
</arquitecto4>
<aparejador1>
<nombre>nombre apa1</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>apa1</numerocolegiado>
</aparejador1>
<aparejador2>
<nombre>nombre apa2</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>apa2</numerocolegiado>
</aparejador2>
<aparejador3>
<nombre>nombre apa3</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>apa3</numerocolegiado>
</aparejador3>
<aparejador4>
<nombre>nombre apa4</nombre>
<primerapellido>1apellido arq</primerapellido>
<segundoapellido>2apellido arq</segundoapellido>
<dni>su dni</dni>
<direccion>direccion</direccion>
<restodireccion>restodireccion</restodireccion>
<codigopostal>08001</codigopostal>
<telefono>555555555</telefono>
<numerocolegiado>apa4</numerocolegiado>
</aparejador4>
</intervinientes>
</persona>
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/