# -*- coding: utf-8 -*-
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email.mime.image import MIMEImage
from email import encoders
# Iniciamos los parámetros del script
remitente = 'correo@gmail.com'
destinatarios = ['correoDestino@gmail.com']#,'dest2','dest3']
asunto = 'Correo de prueba - Imagen'
#cuerpo = 'Este es el contenido del mensaje'
cuerpo = 'Hola!<br/> <br/> Este es un <b>e-mail</b> enviando desde <b>Python</b>'
ruta_adjunto = '/home/pi/correo.txt'
nombre_adjunto = 'correo.txt'
# Creamos el objeto mensaje
mensaje = MIMEMultipart()
# Establecemos los atributos del mensaje
mensaje['From'] = 'correo@gmail.com'
mensaje['To'] = ", ".join(destinatarios)
mensaje['Subject'] = asunto
# Agregamos el cuerpo del mensaje como objeto MIME de tipo texto
#mensaje.attach(MIMEText(cuerpo, 'html'))
# We reference the image in the IMG SRC attribute by the ID we give it below
msgText = MIMEText('<b>Some <i>HTML</i> text</b> and an image.<br><img
src="cid:image1"><br><table class="default"> <tr> <td>Celda 1</td>
<td>Celda 2</td> <td>Celda 3</td> </tr> <tr> <td>Celda 4</td>
<td>Celda 5</td> <td>Celda 6</td> </tr></table>', 'html')
mensaje.attach(msgText)
# Abrimos el archivo que vamos a adjuntar
archivo_adjunto = open(ruta_adjunto, 'rb')
# This example assumes the image is in the current directory
fp = open('test.jpg', 'rb')
msgImage = MIMEImage(fp.read())
fp.close()
# Define the image's ID as referenced above
msgImage.add_header('Content-ID', '<image1>')
mensaje.attach(msgImage)
# Creamos un objeto MIME base
adjunto_MIME = MIMEBase('application', 'octet-stream')
# Y le cargamos el archivo adjunto
adjunto_MIME.set_payload((archivo_adjunto).read())
# Codificamos el objeto en BASE64
encoders.encode_base64(adjunto_MIME)
# Agregamos una cabecera al objeto
adjunto_MIME.add_header('Content-Disposition', "attachment;
filename= %s" % nombre_adjunto)
# Y finalmente lo agregamos al mensaje
mensaje.attach(adjunto_MIME)
# Creamos la conexión con el servidor
sesion_smtp = smtplib.SMTP('smtp.gmail.com', 587)
# Ciframos la conexión
sesion_smtp.starttls()
# Iniciamos sesión en el servidor
sesion_smtp.login('correo@gmail.c','TuClave')
# Convertimos el objeto mensaje a texto
texto = mensaje.as_string()
# Enviamos el mensaje
sesion_smtp.sendmail(remitente, destinatarios, texto)
# Cerramos la conexión
sesion_smtp.quit()
No comments:
Post a Comment