Problema recuperando el texto de un TextEdit (QT)
Javi
jardindeletras en telefonica.net
Sab Jul 3 06:34:38 CEST 2004
Hola
Estoy escribiendo un programa para mandar e-mails con las librerias smtplib y
qt y me ha surgido el siguiente problema con las vocales acentuadas dentro de
un TextEdit:
Primero usé la siguiente línea para recuperar el contenido de un textEdit:
cuerpo=str(widget_principal.txtCuerpo.text())
pero me daba este error:
Traceback (most recent call last):
File "qmail.py", line 41, in bEnviar_clicked
cuerpo=str(widget_principal.txtCuerpo.text())
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf3' in position
17: ordinal not in range(128)
Entonces la cambié por:
cuerpo=unicode(widget_principal.txtCuerpo.text())
pero ahora es smtplib el que falla:
Traceback (most recent call last):
File "qmail.py", line 68, in bEnviar_clicked
smtpServidor.sendmail (remitente,destinatario,mensaje)
File "/usr/lib/python2.3/smtplib.py", line 688, in sendmail
(code,resp) = self.data(msg)
File "/usr/lib/python2.3/smtplib.py", line 485, in data
self.send(q)
File "/usr/lib/python2.3/smtplib.py", line 312, in send
self.sock.sendall(str)
File "<string>", line 1, in sendall
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf3' in position
67: ordinal not in range(128)
He probado a usar la función ToASCII de encodings.idna pero tampoco funciona.
¿Podéis hecharme una mano?
Gracias
Más información sobre la lista de distribución Python-es