Access envoyer mail avec piece jointe

Voici les étapes pour envoyer un e-mail avec pièce jointe à l'aide de Python et de la bibliothèque smtplib :

Étape 1 : Importer les bibliothèques

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email.mime.text import MIMEText
from email.utils import formatdate
from email import encoders

Étape 2 : Configurer les informations de connexion

# Informations de connexion à votre serveur SMTP
SMTP_SERVER = 'your_smtp_server'
SMTP_PORT = 587
SMTP_USERNAME = 'your_smtp_username'
SMTP_PASSWORD = 'your_smtp_password'

Étape 3 : Créer le corps de l'e-mail

# Créer le corps de l'e-mail
msg = MIMEMultipart()
msg['From'] = 'your_email_address'
msg['To'] = 'recipient_email_address'
msg['Subject'] = 'Titre de l\'e-mail'
msg['Date'] = formatdate(localtime=True)

Étape 4 : Ajouter le corps de l'e-mail

# Ajouter le corps de l'e-mail
msg.attach(MIMEText('Contenu de l\'e-mail'))

Étape 5 : Ajouter la pièce jointe

# Ajouter la pièce jointe
attachment = open('chemin/vers/la/piece/jointe', 'rb')
part = MIMEBase('application', 'octet-stream')
part.set_payload(attachment.read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', "attachment; filename= %s" % 'nom_de_la_piece_jointe')
msg.attach(part)
attachment.close()

Étape 6 : Envoyer l'e-mail

# Envoyer l'e-mail
server = smtplib.SMTP(SMTP_SERVER, SMTP_PORT)
server.starttls()
server.login(SMTP_USERNAME, SMTP_PASSWORD)
text = msg.as_string()
server.sendmail(SMTP_USERNAME, 'recipient_email_address', text)
server.quit()

Voilà! Vous avez maintenant envoyé un e-mail avec pièce jointe à l'aide de Python et de la bibliothèque smtplib.