Saltar al contenido

Envío de correos electrónicos con Google – PythonForBeginners.com

Visión general

Una tarea común para los administradores y desarrolladores de sistemas es usar scripts para enviar correos electrónicos si ocurre un error.

¿Por qué utilizar Gmail?

Los servidores SMTP de Google son de uso gratuito y funcionan perfectamente para retransmitir correos electrónicos. Tenga en cuenta que Google tiene un límite de envío: “Google desactivará temporalmente su cuenta si envía mensajes a más de 500 destinatarios o si envía una gran cantidad de mensajes que no se pueden entregar. “Mientras estés bien con eso, estás listo para comenzar.

¿Dónde empiezo?

El envío de correo se realiza con smtplib de Python utilizando un servidor SMTP (Protocolo simple de transferencia de correo). Dado que usaremos el servidor SMTP de Google para entregar nuestros correos electrónicos, necesitaremos recopilar información como servidor, puerto, autenticación. Esa información es fácil de encontrar con una búsqueda en Google.

Instrucciones de configuración estándar de Google

Servidor de correo saliente (SMTP): requiere TLS o SSL: smtp.gmail.com

Usar autenticación:

Puerto para TLS / STARTTLS: 587

Puerto para SSL: 465

Tiempos de espera del servidor: Más de 1 minuto, recomendamos 5

Nombre de cuenta o nombre de usuario: su dirección de correo electrónico completa (incluido @ gmail.com o @ su_dominio.com)

Dirección de correo electrónico: Tu correo electrónico ([email protected] o [email protected]_dominio.com) Contraseña: tu contraseña de Gmail

Empezando

Comience abriendo su editor de texto favorito e importe el módulo smtplib en la parte superior de su secuencia de comandos.

import smtplib

Ya en la parte superior crearemos algunos encabezados SMTP.

fromaddr="[email protected]"
toaddrs="[email protected]"
msg = 'Enter you message here’

Una vez hecho esto, cree un objeto SMTP que se utilizará para la conexión con el servidor.

server = smtplib.SMTP("smtp.gmail.com:587”)

A continuación, usaremos la función starttls () que es requerida por Gmail.

server.starttls()

A continuación, inicie sesión en el servidor:

Entrenamiento de Python recomendado

Para el entrenamiento de Python, nuestra principal recomendación es DataCamp.

server.login(username,password)

Luego, le enviaremos el correo electrónico:

server.sendmail(fromaddr, toaddrs, msg)

El programa final

Puede ver el programa completo a continuación, a estas alturas ya debería poder comprender lo que hace.

import smtplib
# Specifying the from and to addresses

fromaddr="[email protected]"
toaddrs="[email protected]"

# Writing the message (this message will appear in the email)

msg = 'Enter you message here'

# Gmail Login

username="username"
password = 'password'

# Sending the mail  

server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(username,password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()
Más lectura

Usando Python para enviar correo electrónico

Entrenamiento de Python recomendado

Para el entrenamiento de Python, nuestra principal recomendación es DataCamp.