Pythonでメールを送信

この記事では、gmailでメールを送信するPython codeを説明します。

Code

下記のコードは簡単なテキストメールを送信する例になります。

smtplibに関する詳しい使い方はこちらを参照してください。

# main library
import smtplib

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

def create_message(from_addr, to_addr, subject, body):
    msg = MIMEText(body)
    msg['Subject'] = subject
    msg['From'] = from_addr
    msg['To'] = to_addr
    msg['Date'] = formatdate()
    return msg


def send_email(to_addrs, subject, message):
    # Use it to send email to other addresses
    from_addr = '<FROM_ADDRESS>@gmail.com'
    
    msg = create_message(from_addr, to_addrs, subject, message)

    smtpobj = smtplib.SMTP_SSL('smtp.gmail.com', 465)
    
    smtpobj.login(from_addr, <FROM_ADDRESS_PASSWORD>)
    
    smtpobj.sendmail(from_addr, to_addrs, msg.as_string())
        
    smtpobj.quit()

if __name__ == '__main__':
    send_email('<TO_ADDRESS>@gmail.com', 'SUBJECT', 'BODY')

Others

Gmail security setting

PythonでGmailにログインするためには、送信するGmailに対して、安全性の低いアプリからのアカウントへのアクセスを許可する必要があります。

そのため、下記いずれの設定が必要です。

  • Use an App Password

  • “Less secure app access”をOnに設定

詳しい内容はこちらを参照してください。

この記事が気に入ったらサポートをしてみませんか?