Mandar email con python y gmail

Aquí tenemos un script de python,  que nos permite enviar un email en formato html, y con un fichero adjunto (En este caso un pdf)

Para su uso personal habría que cambiar las siguientes líneas 15, 17 y 19.
En dónde indicaríamos desde el correo que mandamos el mensaje, el asunto y el cuerpo del mensaje.

En las líneas 20 y 21, indicamos el fichero que queremos anexar, en este caso sería un pdf en la misma ruta del script.

import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.MIMEBase import MIMEBase
from email import encoders

def mandarcv(toaddr):
    fromaddr = "serrano.pardo.o@gmail.com"
    #toaddr = ""

    msg = MIMEMultipart()

    msg['From'] = fromaddr
    msg['To'] = toaddr
    msg['Subject'] = "CV Docente de ofimática y creación de páginas web"

    body = "<h1>Docente de Microsoft Office</h1> y Creación de páginas web, wordpress, html,/ncss"

    msg.attach(MIMEText(body, 'html'))#plain o html

    filename = "OscarSerranoCV.pdf"
    attachment = open("OscarSerranoCV.pdf", "rb")

    part = MIMEBase('application', 'octet-stream')
    part.set_payload((attachment).read())
    encoders.encode_base64(part)
    part.add_header('Content-Disposition', "attachment; filename= %s" % filename)

    msg.attach(part)

    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.starttls()
    server.login(fromaddr, "password")
    text = msg.as_string()
    server.sendmail(fromaddr, toaddr, text)
    server.quit()

mandarcv("kostraman@gmail.com")

Como puedes observar luego llamamos a la función indicandole el correo al que queremos mandar el mensaje de correo.

Este script puede ser de utilidad para mailing para envios de Currículums o para campañas de marketing digital.