[Python-es] no consigo grabar xml

monoBOT monobot.soft en gmail.com
Dom Mar 28 10:50:33 CEST 2010


muchas gracias a todos!!!

encontré una solución!!!!

por si le sirve a alguien he montado unas funciones para hacer esto mas
facil. Total la mayoría de las veces necesitamos buscar, modificar y luego
guardar cambios desde python a xml.... espero les sirvan.

y pueden visitar mi blog para que vean mis peripecias aprendiendo a
programar  :-)

monobotblog.alvarezalonso.es


funciones de búsqueda:

# -*- coding: cp1252 -*-from xml.dom import minidomimport os
 ###definiendo funciones
 def busqueda_xml (arbol, dato, fichero):
    arbol_gral = minidom.parse(fichero)
    valor = arbol_gral.getElementsByTagName(arbol)[0].getElementsByTagName(dato)[0].childNodes[0].nodeValue
    return valor
 def busqueda_lista (arbol, lista, fichero):
    datos=''
    m = lista.split()
    for palabra in m:
        arbol_gral = minidom.parse(fichero)
        valor =
arbol_gral.getElementsByTagName(arbol)[0].getElementsByTagName(palabra)[0].childNodes[0].nodeValue
        datos += 'el %s de %s es: ' % (palabra, arbol) + valor +'\n'
    print datos # en esta funcion habrá que terminarla dependiendo de
como querramos los datos.


funciones de guardado de atributos y luego otra de guardado de archivo.

def guarda_datos(archivo):
    fichero = open(os.path.realpath(archivo), "w")
    arbol_gral.writexml(fichero, encoding='iso-8859-1')
    fichero.close()
    return True
 def cambia_attrib(arbol, dato, nuevovalor):
    nodo_mod = arbol_gral.getElementsByTagName(arbol)[0].getElementsByTagName(dato)[0]
    nodo_mod.childNodes[0].nodeValue = nuevovalor
    print nodo_mod.childNodes[0].nodeValue
    return True
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20100328/353b0490/attachment.html>


Más información sobre la lista de distribución Python-es