読者です 読者をやめる 読者になる 読者になる

pythonでメールを送信。gmailから送信する例 [ubuntu]

基本的な例の続きです。
引き続き、ウノウラボさんの記事を参考にしてサンプルスクリプトを作ります。

gmailを使ったサンプルは、ほぼそのままで使えました。*1

作成したスクリプトは次のようになります。

# -*- coding: utf-8 -*-
import smtplib
from email.MIMEText 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_via_gmail(from_addr, to_addr, msg):
    s = smtplib.SMTP('smtp.gmail.com', 587)
    s.starttls()
    s.login('from_who@gmail.com', 'passwd')
    s.sendmail(from_addr, [to_addr], msg.as_string())
    s.close

if __name__ == '__main__':
    from_addr = 'from_who@gmail.com'
    to_addr = 'to_who@sample.com'
    msg = create_message(from_addr, to_addr, 'message from gmail','message from gmail')
    send_via_gmail(from_addr, to_addr, msg)

*1:python2.5の公式ドキュメントによるとelho()は特に必要無さそうなので、削除しました。2.6以降は情報を見つけられなかった。知ってる人がいたら、教えて欲しい