Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/05/2010, 10:25
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Help, envio de emails...

Te recomiendo checar la documentación.

Ademas tratar de usar excepciones para detectar errores. Básicamente tienes la lógica al revés.

Cita:
Iniciado por pydoc
If this method does not throw an exception, it returns a dictionary, with one entry for each recipient that was refused. Each entry contains a tuple of the SMTP error code and the accompanying error message sent by the server.
Traducción:
Si este método no arroja una excepción, entonces devuelve un diccionario, con una o mas entradas que fueron rechazadas. Cada entrada contiene una tupla de código de error de STMP y el respectivo mensaje de error enviado por el servidor.

Si un diccionario esta vació (envió el correo satisfactoriamente entonces no hubo error) de cualquier otra forma hubo error.

Solo para recordarte que un diccionario vació es falso, en cualquier otro caso verdadero.

Solo para simplificarlo.
Código Python:
Ver original
  1. smtp = smtplib.SMTP(server)
  2.     successful=True
  3.     if (smtp.sendmail(fro, to, msg.as_string())):
  4.         successful=False;
  5.     smtp.close()
  6.     return successful

Otra cosa importante, no olvides cerrar los archivos que abres, linea 34