本記事について
Pythonを用いたOutlookからメール送信のソースコードになります。
以下のパッケージのインストールが必要になります。
pip install pywin32
mail.BodyFormatの値を切り替えることで、 どの形式でメールを送信するか選択できます。 (テキスト形式、HTML形式、リッチテキスト形式)
import datetime import pathlib import win32com.client def send_mail(FAMILY_NAME : str, full_name : str): outlook = win32com.client.Dispatch("Outlook.Application") mail = outlook.CreateItem(0) # メールフォーマット:1 テキスト, 2 HTML, 3 リッチテキスト mail.BodyFormat = 2 # HTML mail.to = 'xxxx@exc.epson.co.jp' cc_list = ['xxxx@exc.epson.co.jp' 'xxxx@exc.epson.co.jp', 'xxxx@exc.epson.co.jp', ] mail.cc = ';'.join(cc_list) mail.bcc = '' dt_now = datetime.datetime.now() today = dt_now.strftime('%Y/%m/%d') mail.subject = '【タイトル】' + ' ' + full_name + ' ' + today mail.bodyFormat = 2 text_file_path = "data\src\message.txt" f = open(text_file_path, 'r', encoding='UTF-8') text_message = f.read() f.close() mail.body = text_message.replace(r"{{FAMILY_NAME}}", FAMILY_NAME) # 出来上がったメールを確認します。 mail.Display(True) FAMILY_NAME = 'FAMILY_NAME' FIRST_NAME = 'FIRST_NAME' FULLNAME = FAMILY_NAME + FIRST_NAME send_mail(FAMILY_NAME, FULLNAME)