[Python-es] problema con las tildes

Luis Miguel Morillas morillas en gmail.com
Sab Abr 3 19:23:17 CEST 2010


El día 3 de abril de 2010 12:50, monoBOT <monobot.soft en gmail.com> escribió:
> el error que da es el siguiente:
> la linea que da error es:
>   File "J:\03 TRABAJO\06 PYTHON\PRUEBAS\21.py", line 83, in guarda_datos
>     arbol_gral.writexml(fichero, encoding='iso-8859-1')
> el error es:
> UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5:
> ordinal not in range(128)
> python graba todo el arbol dom del fichero cuando lo graba. pero el fichero
> xml original, ente lo monté yo a mano.
OK. Ese es el error que yo te comentaba.  Necesito ver la línea 83 y
seguramente alguna anterior y posterior. Qué librería xml estás
utilizando?. Lo del fichero xml a mano no es ningún problema, las
librerías xml te permitirán validar tu documento.

-- lm


> El 3 de abril de 2010 07:02, Luis Miguel Morillas <morillas en gmail.com>
> escribió:
>>
>> El día 3 de abril de 2010 02:17, monoBOT <monobot.soft en gmail.com>
>> escribió:
>> > el programa es muy sencillo, es un programa con entorno wxpython, son
>> > una
>> > serie de pantallas donde el usuario va metiendo datos (nombre apellido,
>> > dni
>> > población etc... toda esta información va a un fichero de texto xml...
>> > la
>> > siguiente vez que el usuario abre se cargan automaticamente las
>> > respuestas
>> > anteriores. el objetivo final es completar todos los datos que ha metido
>> > el
>> > usuario con una normativa para efectuar una memoria a imprimir.
>> > no se si te sirve de algo mi respuesta.
>>
>> Y cómo se crea ese xml? "a mano"? Qué línea de código genera el error?
>> Qué error ves?
>>
>> -- lm
>>
>> > El 2 de abril de 2010 23:12, Luis Miguel Morillas <morillas en gmail.com>
>> > escribió:
>> >>
>> >> El día 2 de abril de 2010 23:54, monoBOT <monobot.soft en gmail.com>
>> >> escribió:
>> >> > Y que me recomiendas? mi programa es bastante sencillo tengo un
>> >> > fichero
>> >> > .py
>> >> > con # -*- coding: iso-8859-1 -*- en el encabezado y cuando guardo los
>> >> > archivos xml lo hago con  encoding='iso-8859-1' es decir que el
>> >> > archivo
>> >> > xml
>> >> > se graba con este encabezado <?xml version="1.0"
>> >> > encoding="iso-8859-1"?>
>> >> > pero aun así al guardar campos en el xml con tildes u otros
>> >> > caracteres
>> >> > no
>> >> > ascii me daba error.
>> >> >
>> >>
>> >>  ¿Cómo es tu programa? ¿Qué es lo que guardas? El   # -*- coding ...
>> >> afecta a tu código python. El problema seguramente viene del manejo de
>> >> la librería de xml que usas.
>> >>
>> >> -- lm
>> >>
>> >>
>> >> > El 2 de abril de 2010 21:15, Luis Miguel Morillas
>> >> > <morillas en gmail.com>
>> >> > escribió:
>> >> >>
>> >> >> El día 2 de abril de 2010 21:50, monoBOT <monobot.soft en gmail.com>
>> >> >> escribió:
>> >> >> > Muchas gracias a todos!
>> >> >> > Lo he resuelto de la siguiente forma:
>> >> >> > he modificado el sitecustomize.py  poniéndole esto...
>> >> >> >
>> >> >> > import sys
>> >> >> > sys.setdefaultencoding('iso-8859-1')
>> >> >> >
>> >> >> > ahora python puede guardar los caracteres especiales directamente
>> >> >> > (antes
>> >> >> > lo
>> >> >> > intentaba como ascii y pr eso daba el error) y como xml funciona
>> >> >> > con
>> >> >> > unicode
>> >> >> > lo admite sin problemas.
>> >> >>
>> >> >> Eso significa que el problema lo tenías por el manejo del unicode
>> >> >> dentro de tu programa. Ten cuidado con esa solución, podría
>> >> >> generarte
>> >> >> problemas si tienes que tratar con otro encoding.
>> >> >>
>> >> >> -- lm
>> >> >>
>> >> >>
>> >> >>
>> >> >> > --
>> >> >> > monobotblog.alvarezalonso.es
>> >> >> > _______________________________________________
>> >> >> > Python-es mailing list
>> >> >> > Python-es en python.org
>> >> >> > http://mail.python.org/mailman/listinfo/python-es
>> >> >> > FAQ: http://python-es-faq.wikidot.com/
>> >> >> >
>> >> >> >
>> >> >> _______________________________________________
>> >> >> Python-es mailing list
>> >> >> Python-es en python.org
>> >> >> http://mail.python.org/mailman/listinfo/python-es
>> >> >> FAQ: http://python-es-faq.wikidot.com/
>> >> >
>> >> >
>> >> >
>> >> > --
>> >> > monobotblog.alvarezalonso.es
>> >> > _______________________________________________
>> >> > Python-es mailing list
>> >> > Python-es en python.org
>> >> > http://mail.python.org/mailman/listinfo/python-es
>> >> > FAQ: http://python-es-faq.wikidot.com/
>> >> >
>> >> >
>> >> _______________________________________________
>> >> Python-es mailing list
>> >> Python-es en python.org
>> >> http://mail.python.org/mailman/listinfo/python-es
>> >> FAQ: http://python-es-faq.wikidot.com/
>> >
>> >
>> >
>> > --
>> > Héctor Alvarez
>> > Arquitecto
>> >
>> > Advertencia legal:
>> > De acuerdo a la vigente Ley Orgánica 15/1999 de Protección de Datos de
>> > carácter Personal le informamos que:
>> > Este correo electrónico contiene información privada y estrictamente
>> > confidencial. Si usted NO ES el destinatario, NO ESTA AUTORIZADO a
>> > leerlo,
>> > directa o indirectamente, usar, revelar, distribuir, imprimir o copiar
>> > ninguna de las partes y/o anexos de éste mensaje. Si por error ha
>> > recibido
>> > este mensaje, le rogamos lo notifique a su emisor respondiendo a éste
>> > e-mail
>> > y proceda a borrar de su sistema inmediatamente el mensaje así como
>> > todas
>> > sus copias.
>> >
>> > _______________________________________________
>> > Python-es mailing list
>> > Python-es en python.org
>> > http://mail.python.org/mailman/listinfo/python-es
>> > FAQ: http://python-es-faq.wikidot.com/
>> >
>> >
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>
>
>
> --
> Héctor Alvarez
> Arquitecto
>
> Advertencia legal:
> De acuerdo a la vigente Ley Orgánica 15/1999 de Protección de Datos de
> carácter Personal le informamos que:
> Este correo electrónico contiene información privada y estrictamente
> confidencial. Si usted NO ES el destinatario, NO ESTA AUTORIZADO a leerlo,
> directa o indirectamente, usar, revelar, distribuir, imprimir o copiar
> ninguna de las partes y/o anexos de éste mensaje. Si por error ha recibido
> este mensaje, le rogamos lo notifique a su emisor respondiendo a éste e-mail
> y proceda a borrar de su sistema inmediatamente el mensaje así como todas
> sus copias.
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>



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