Envía correo desde tu cuenta de Gmail usando Python

Aquí, vamos a aprender cómo enviar un correo básico simple usando el código de Python. Python, al ser un lenguaje poderoso, no necesita ninguna biblioteca externa para importar y ofrece una biblioteca nativa para enviar correos electrónicos: «SMTP lib». «smtplib» crea un objeto de sesión de cliente de Protocolo simple de transferencia de correo que se utiliza para enviar correos electrónicos a cualquier identificación de correo electrónico válida en Internet. Diferentes sitios web usan diferentes números de puerto.
En este artículo, estamos usando una cuenta de Gmail para enviar un correo. El número de puerto utilizado aquí es ‘587’. Y si desea enviar correo utilizando un sitio web que no sea Gmail, debe obtener la información correspondiente.

Pasos para enviar correo desde la cuenta de Gmail:

  1. En primer lugar, se debe importar la biblioteca «smtplib».
  2. Después de eso, para crear una sesión, usaremos su instancia SMTP para encapsular una conexión SMTP.
    s = smtplib.SMTP('smtp.gmail.com', 587)

    En esto, debe pasar el primer parámetro de la ubicación del servidor y el segundo parámetro del puerto a usar. Para Gmail, usamos el número de puerto 587.

  3. Por razones de seguridad, ahora ponga la conexión SMTP en el modo TLS. TLS (Seguridad de la capa de transporte) cifra todos los comandos SMTP. Después de eso, por seguridad y autenticación, debe pasar las credenciales de su cuenta de Gmail en la instancia de inicio de sesión. El compilador mostrará un error de autenticación si ingresa una identificación de correo electrónico o contraseña no válida.
  4. Almacene el mensaje que necesita enviar en una variable, por ejemplo, mensaje. Usando la instancia de sendmail(), envíe su mensaje. sendmail() usa tres parámetros: sender_email_id, receiver_email_id y message_to_be_sent . Los parámetros deben estar en la misma secuencia.

Esto enviará el correo electrónico desde su cuenta. Una vez que haya completado su tarea, finalice la sesión SMTP utilizando quit().

# Python code to illustrate Sending mail from 
# your Gmail account 
import smtplib
  
# creates SMTP session
s = smtplib.SMTP('smtp.gmail.com', 587)
  
# start TLS for security
s.starttls()
  
# Authentication
s.login("sender_email_id", "sender_email_id_password")
  
# message to be sent
message = "Message_you_need_to_send"
  
# sending the mail
s.sendmail("sender_email_id", "receiver_email_id", message)
  
# terminating the session
s.quit()

Enviar el mismo mensaje a varias personas

Si necesita enviar el mismo mensaje a diferentes personas. Puedes usar for loop para eso.
Por ejemplo, tiene una lista de ID de correo electrónico a los que debe enviar el mismo correo. Para ello, inserte un bucle «for» entre la inicialización y la finalización de la sesión SMTP. Loop se inicializará paso a paso y después de enviar el correo electrónico, la sesión SMTP finalizará.

# Python code to illustrate Sending mail 
# to multiple users 
# from your Gmail account 
import smtplib
  
# list of email_id to send the mail
li = ["xxxxx@gmail.com", "yyyyy@gmail.com"]
  
for dest in li:
    s = smtplib.SMTP('smtp.gmail.com', 587)
    s.starttls()
    s.login("sender_email_id", "sender_email_id_password")
    message = "Message_you_need_to_send"
    s.sendmail("sender_email_id", dest, message)
    s.quit()

Puntos importantes:

  • Este código puede enviar correo simple que no tiene ningún archivo adjunto ni asunto .
  • Una de las cosas más sorprendentes de este código es que podemos enviar cualquier cantidad de correos electrónicos usando este y Gmail principalmente coloca su correo en la sección principal. En general, los correos enviados no se detectarían como spam.
  • El manejo de archivos también se puede usar para obtener la identificación de correo electrónico de un archivo y luego se puede usar para enviar los correos electrónicos.

Siguiente: Enviar correo con archivos adjuntos desde su cuenta de Gmail usando Python

Este artículo es una contribución de Rishabh Bansal . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *