{}const=>[]async()letfn</>var
Python開発

Pythonプロジェクトで美しいメールを送信する方法

HTMLとCSSを使用してメールテンプレートを作成します。送信するための手順、テンプレート、コード。

К

Kodik

著者

1分で読める

美しいメールを送信することは、現代のアプリケーションにおいて重要な部分です。登録、通知、またはメールマガジンのいずれであっても、単純な text/plain ではもはや感情を呼び起こすことはできません。しかし、HTMLメールはすでに本格的なマーケティングです💥

この記事では、Pythonプロジェクト内でHTMLとCSSを使用してメールテンプレートを作成および使用する方法について説明します。これは簡単でとても便利です!

🔧 HTML テンプレートをメールに使用する理由

  • 📌 手紙の構成を整理する

  • 🖼 スタイル、ボタン、画像を追加する

  • 👀 視覚的に魅力的なメールを作成する

  • 📱 モバイルデバイスに対応

🔥 10万人以上の学生が参加中

理論を読むのに疲れた?
コーディングの時間だ!

Kodik — 実践でプログラミングを学ぶアプリ。AIメンター、インタラクティブなレッスン、実際のプロジェクト。

🤖 AI 24時間
🎓 修了証
💰 無料
🚀 始める
今日参加

🛠️ 何を使いますか?

  • smtplib — メールを送信するため

  • email.message.EmailMessage — メールを作成するため

  • Jinja2 — 変数を使用してHTMLを生成する

  • HTML + встроенный CSS — 登録用

📁 プロジェクトの構造

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

🧠ステップ1: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>

🧪 ステップ2: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)

重要: パスワードをハードコードしないでください。環境変数または .env を使用してください

📌 レターのレイアウトのヒント

考慮すべきこと

なぜ重要なのか

✅インラインスタイル

メールユーザーは <style> をカットします

✅ シンプルな構造

信頼性のために <table> を使用することをお勧めします

❌ JS を使用しない

メールでは機能しません

✅ URL経由の画像

不要なファイルとして添付しないでください

✅ Gmail、Outlookでテスト

異なる表示エンジン

📤 使用例

  • 登録:確認メール

  • パスワードの復元

  • ニュースレター

  • 注文通知

  • サポートレター

👀 どのようにメールをテストしますか?

HTMLファイルをローカルに保存できます。

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

🧩 どこで役に立つか

  • Flaskプロジェクト(flask-mail

  • Django (EmailMultiAlternatives)

  • 非同期SMTPライブラリを介したFastAPI

  • サーバーボット、通知、CRM統合

🧠 結論

PythonでHTMLメールを作成するのは簡単です!重要なのは、テンプレート、いくつかのスタイル、そしてきちんとした送信です。

メールマガジンや自動生成メールを試したい場合は、アプリで コディック ステップバイステップのコース、テンプレート、コミュニティサポートが見つかります。アクセスするか、書いてください Telegramチャット ✌️

💬 レスポンシブレイアウトまたはMailgun / SendGridとの統合を備えたメールテンプレートが必要ですか?ご連絡ください。続きを作成します!

🎯先延ばしをやめよう

記事は気に入った?
実践の時間だ!

Kodikでは読むだけでなく、すぐにコードを書く。理論 + 実践 = 本当のスキル。

即座に実践
🧠AIがコードを説明
🏆修了証

登録不要 • カード不要