{}const=>[]async()letfn</>var
PythonDéveloppement

Comment envoyer de belles lettres dans les projets Python

Créons des modèles d'email avec HTML et CSS : instructions, modèle et code à envoyer.

К

Kodik

Auteur

3 min de lecture

L'envoi de belles lettres est une partie importante de toute application moderne. Qu'il s'agisse d'une inscription, d'une notification ou d'un envoi, un simple text/plain ne suscite plus d'émotions. Mais les e-mails HTML, c'est du vrai marketing 💥

Dans cet article, nous verrons comment créer et utiliser des modèles d'e-mail avec HTML et CSS dans un projet Python. C'est simple et très utile !

🔧 Pourquoi avez-vous besoin de modèles HTML pour les e-mails ?

  • 📌 Organiser la structure de la lettre

  • 🖼 Ajouter des styles, des boutons, des images

  • 👀 Rendre le courrier visuellement attrayant

  • 📱 Adapter aux appareils mobiles

🔥 100 000+ étudiants déjà avec nous

Marre de lire la théorie ?
Il est temps de coder !

Kodik — une appli où tu apprends à coder par la pratique. Mentor IA, leçons interactives, projets réels.

🤖 IA 24/7
🎓 Certificats
💰 Gratuit
🚀 Commencer
Ont rejoint aujourd'hui

🛠️ Qu'allons-nous utiliser ?

  • smtplib — pour envoyer des lettres

  • email.message.EmailMessage — pour générer une lettre

  • Jinja2 — pour générer du code HTML avec des variables

  • HTML + встроенный CSS — pour l'enregistrement

📁 Structure du projet

email_project/
├── main.py
├── templates/
│   └── welcome.html

🧠 Étape 1 : modèle de lettre HTML (templates/welcome.html)

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <style>
    body { font-family: Arial, sans-serif; background-color: #f9f9f9; padding: 20px; }
    .container { background: white; padding: 30px; border-radius: 10px; max-width: 600px; margin: auto; }
    h1 { color: #333; }
    p { color: #555; }
    .button { background-color: #007bff; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px; }
  </style>
</head>
<body>
  <div class="container">
    <h1>Привет, {{ name }}!</h1>
    <p>Спасибо за регистрацию. Добро пожаловать в наш проект!</p>
    <a href="{{ link }}" class="button">Подтвердить email</a>
  </div>
</body>
</html>

🧪 Étape 2 : Génération de la lettre dans main.py

import smtplib
from email.message import EmailMessage
from jinja2 import Environment, FileSystemLoader

env = Environment(loader=FileSystemLoader('templates'))
template = env.get_template('welcome.html')
html_content = template.render(name="Code", link="https://itcodik.com/confirm")

msg = EmailMessage()
msg['Subject'] = 'Welcome!'
msg['From'] = 'noreply@example.com'
msg['To'] = 'user@example.com'
msg.set_content("You have a new email")
msg.add_alternative(html_content, subtype='html')

with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp:
    smtp.login('your_email@gmail.com', 'your_password')
    smtp.send_message(msg)

Important : ne codez jamais le mot de passe en dur, utilisez des variables d'environnement ou .env

📌 Conseils pour la mise en page des lettres

Ce qu'il faut prendre en compte

Pourquoi est-ce important

✅ Styles en ligne

Les courriers électroniques coupent <style>

✅ Structure simple

Mieux <table> pour la fiabilité

❌ Ne pas utiliser JS

Il ne fonctionne pas dans les lettres

✅ Images via URL

Ne pas joindre en tant que fichiers sans nécessité

✅ Tester dans Gmail, Outlook

Différents moteurs d'affichage

📤 Exemples d'utilisation

  • Inscription : lettre de confirmation

  • Récupération du mot de passe

  • Bulletin d'information

  • Notification de commande

  • Lettre de soutien

👀 Comment tester une lettre ?

Vous pouvez enregistrer le fichier HTML localement :

with open("preview.html", "w", encoding="utf-8") as f:
    f.write(html_content)

🧩 Où cela peut-il être utile

  • Dans les projets Flask (flask-mail)

  • Dans Django (EmailMultiAlternatives)

  • Dans FastAPI via des bibliothèques SMTP asynchrones

  • Dans les bots de serveur, les notifications, les intégrations CRM

🧠 Conclusion

Créer des e-mails HTML en Python est facile ! L'essentiel est un modèle, un peu de style et un envoi soigné.

Si vous souhaitez expérimenter les envois et la génération automatique de lettres, dans l'application Code vous trouverez des cours étape par étape, des modèles et un soutien communautaire. Venez ou écrivez à notre chat Telegram ✌️

💬 Voulez-vous un modèle de lettre avec une mise en page réactive ou une intégration avec Mailgun/SendGrid ? Écrivez-nous et nous ferons une suite !

🎯Arrête de reporter

Tu as aimé l'article ?
Place à la pratique !

Avec Kodik, tu ne lis pas seulement — tu codes immédiatement. Théorie + pratique = vraies compétences.

Pratique instantanée
🧠L'IA explique le code
🏆Certificat

Sans inscription • Sans carte