En este capítulo continuamos viendo más módulos que nos proporciona Python y en concreto utilizaremos el módulo smtplib que nos permitirá enviar emails a través de la vía SMTP, este módulo estará apoyado por algunas funciones del módulo email como MIMEMultipart y MIMEText, respecto a la creación de las cabeceras del email, tales como el content-type que para el ejemplo utilizaremos text/html para el mensaje, así como otros argumentos como Subject (asunto), From (remitente) o To (destinatario).
En la siguiente página puedes obtener más información sobre las cabeceras de email ... http://en.wikipedia.org/wiki/Email
En el ejemplo del capítulo del vídeo tutorial creamos un programa el cual será configurado para poder enviar emails a través del SMTP de Gmail, el programa solicitará las credenciales user y password de Gmail del usuario y también para agregar a las cabeceras del email: el remitente (From), el destinatario (To), el asunto (Subject) y el mensaje html (content-type:text/html).
El código del capítulo del vídeo tutorial es el siguiente ...
import smtplib, getpass from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText print("**** Enviar email con Gmail ****") user = input("Cuenta de gmail: ") password = getpass.getpass("Password: ") #Para las cabeceras del email remitente = input("From, ejemplo: administrador <admin@gmail.com>: ") destinatario = input("To, ejemplo: amigo <amigo@mail.com>: ") asunto = input("Subject, Asunto del mensaje: ") mensaje = input("Mensaje HTML: ") #Host y puerto SMTP de Gmail gmail = smtplib.SMTP('smtp.gmail.com', 587) #protocolo de cifrado de datos utilizado por gmail gmail.starttls() #Credenciales gmail.login(user, password) #muestra la depuración de la operacion de envío 1=true gmail.set_debuglevel(1) header = MIMEMultipart() header['Subject'] = asunto header['From'] = remitente header['To'] = destinatario mensaje = MIMEText(mensaje, 'html') #Content-type:text/html header.attach(mensaje) #Enviar email gmail.sendmail(remitente, destinatario, header.as_string()) #Cerrar la conexión SMTP gmail.quit()
No hay comentarios:
Publicar un comentario