commons.mail のソースコード

# coding: utf-8

import smtplib
from email.mime.text import MIMEText
from email.utils import formatdate

[ドキュメント] class Mail(): """ メール送信用のクラス。メールの作成・送信を行う。 Attributes ---------- mvclog : HaluLogger ログ出力用オブジェクト。 mvclogname : str ログの出力ファイル名。 """ def __init__(self, mvclog, mvclogname): self.mvclog = mvclog self.mvclogname = mvclogname
[ドキュメント] def create_message(self, from_addr, to_addr, subject, body): """ メールメッセージ(MIMEText)を作成する。 Parameters ---------- from_addr : str 送信元メールアドレス to_addr : str 宛先メールアドレス subject : str メールのタイトル body : str メールの本文 Returns ------- msg : dict 作成したメールメッセージ(MIMEText) """ msg = MIMEText(body) msg['Subject'] = subject msg['From'] = from_addr msg['To'] = to_addr msg['Date'] = formatdate() return msg
[ドキュメント] def send_mail(self,server_addr, port, user_addr, password, msg): """ メールを送信する。 Parameters ---------- server_addr : str メールサーバのアドレス port : str メールサーバのポート番号 user_addr : str メールサーバのログインアドレス password : str メールサーバのログインパスワード msg : dict メールメッセージ(MIMEText) """ try: server = smtplib.SMTP(server_addr, port) server.starttls() server.login(user_addr, password) server.send_message(msg) server.quit() except Exception as e: self.mvclog.error(self.mvclogname, f'Mail send_mail exception message : {e}')