Para envíar correos utilizando el servicio de SendGrid y Python será necesario instalar la librería sendgrid.
pip install sendgrid
Aquí un ejemplo de como envíar un correo electronico.
import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail
message = Mail(
from_email='[email protected]',
to_emails='[email protected]',
subject='Prueba de sendgrid',
html_content = """
<h2>Hola Mundo<h2>
"""
)
Una excelente ide es almacenar el token que SendGrid nos proporciona en una variable de entorno.
En caso una exception SSL: CERTIFICATE_VERIFY_FAILED sea lanzada será necesario generar el certificado.
open /Applications/Python\ 3.7/Install\ Certificates.command
Sí así lo deseamos podemos envíar el correo de forma concurrente.
import os
import threading
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail
def send_mail_async(message):
SECRET_KEY = os.environ.get('SENDGRID_API_KEY')
sendgrid = SendGridAPIClient(SECRET_KEY)
response = sendgrid.send(message)
if response.status_code == 202:
print('Mensaje enviado exitosamente.')
message = Mail(
from_email='[email protected]',
to_emails='[email protected]',
subject='Prueba de sendgrid',
html_content = """
<h2>Hola Mundo<h2>
"""
)
thread = threading.Thread(target=send_mail_async, args=(message,))
thread.start()
Bootcamp Ciencia de Datos
12 semanas de formación intensiva en los conocimientos, fundamentos, y herramientas que necesitas para ser científico de datos