Cómo enviar correos electrónicos en Python con archivo adjunto – Resuelto

Cómo enviar correos electrónicos en Python con archivo adjunto – Resuelto

Enviar correos electrónicos con archivos adjuntos es una tarea común en el mundo de la programación. En Python, podemos hacer esto de manera sencilla utilizando la librería `smtplib` para enviar el correo y `email` para crear el mensaje. A continuación, te mostraremos cómo hacerlo.

1. Configurar el servidor SMTP

Antes de enviar un correo electrónico, necesitamos configurar el servidor SMTP que vamos a utilizar. En este ejemplo, utilizaremos Gmail como servidor SMTP. Debes asegurarte de habilitar el acceso de aplicaciones menos seguras en tu cuenta de Gmail para poder enviar correos desde Python.

«`python

import smtplib

server = smtplib.SMTP(‘smtp.gmail.com’, 587)

server.starttls()

server.login(«tucorreo@gmail.com», «tucontraseña»)

«`

2. Crear el mensaje

Ahora vamos a crear el mensaje que queremos enviar. En este caso, vamos a enviar un correo con un archivo adjunto.

«`python

from email.mime.multipart import MIMEMultipart

from email.mime.base import MIMEBase

from email import encoders

msg = MIMEMultipart()

msg[‘From’] = «tucorreo@gmail.com»

msg[‘To’] = «destinatario@gmail.com»

msg[‘Subject’] = «Correo con archivo adjunto»

attachment = open(«archivo.txt», «rb»)

p = MIMEBase(‘application’, ‘octet-stream’)

p.set_payload((attachment).read())

encoders.encode_base64(p)

p.add_header(‘Content-Disposition’, «attachment; filename=archivo.txt»)

msg.attach(p)

«`

3. Enviar el correo

Finalmente, vamos a enviar el correo con el archivo adjunto que acabamos de crear.

«`python

text = msg.as_string()

server.sendmail(«tucorreo@gmail.com», «destinatario@gmail.com», text)

«`

¡Listo! Con estos pasos, has aprendido cómo enviar correos electrónicos en Python con archivos adjuntos. Recuerda adaptar el código a tus necesidades y configuraciones específicas. ¡Esperamos que esta guía te haya sido útil!