2008-11-15
添付ファイル付きメールの送信サンプル
サンプル
#! /usr/bin/env python # -*- coding: utf-8 -*- import os.path import datetime import smtplib from email import Encoders from email.Utils import formatdate from email.MIMEBase import MIMEBase from email.MIMEMultipart import MIMEMultipart from email.MIMEText import MIMEText def create_message(from_addr, to_addr, subject, body, attach_file): """ Mailのメッセージを構築する """ msg = MIMEMultipart() msg["Subject"] = subject msg["From"] = from_addr msg["To"] = to_addr msg["Date"] = formatdate() body = MIMEText(body) msg.attach(body) # 添付ファイルのMIMEタイプを指定する attachment = MIMEBase("application","vnd.ms-excel") # 添付ファイルのデータをセットする file = open(attach_file) attachment.set_payload(file.read()) file.close() Encoders.encode_base64(attachment) msg.attach(attachment) attachment.add_header("Content-Disposition","attachment", filename=attach_file) return msg def send(from_addr, to_addrs, msg): """ Mailを送信する """ smtp = smtplib.SMTP("localhost") smtp.sendmail(from_addr, to_addrs, msg.as_string()) smtp.close() if __name__ == '__main__': from_addr = "xxx@xx.xx" to_addr = "yyy@yy.yy" subject = "sample" body = "test body" msg = create_message(from_addr, to_addr, subject, body, "sample.xls") send(from_addr, [to_addr], msg)
送信されたメール
こんな感じのメールが届きます。
Subject: sample From: xxx@xx.xx To: yyy@yy.yy Date: Sat, 15 Nov 2008 09:42:15 -0000 --===============2075738206== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit test body --===============2075738206== Content-Type: application/vnd.ms-excel MIME-Version: 1.0 Content-Disposition: attachment; filename="sample.xls"
トラックバック - http://d.hatena.ne.jp/aqvi/20081115/1226742281
リンク元
- 661 https://www.google.co.jp/
- 588 http://d.hatena.ne.jp/kenpy/20101123/1290499799
- 253 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCcQFjAA&url=http://d.hatena.ne.jp/aqvi/20081115/1226742281&ei=CLw0T7bbIe6imQXHoNX5AQ&usg=AFQjCNHaCQBku5dhluGI96lB2CfOJxYL5A
- 160 http://noriboz.hatenadiary.com/entry/20130415/1366002286
- 105 http://d.hatena.ne.jp/noriboz/20130415/1366002286
- 91 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&sqi=2&ved=0CC0QFjAB&url=http://d.hatena.ne.jp/aqvi/20081115/1226742281&ei=ZPtrT-iYBomOmQXM-_y8Bg&usg=AFQjCNHaCQBku5dhluGI96lB2CfOJxYL5A
- 75 http://www.google.co.jp/search?q=python+メール+添付&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 52 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=8&ved=0CGQQFjAH&url=http://d.hatena.ne.jp/aqvi/20081115/1226742281&ei=BfS9T9etJcmKmQWK4qxA&usg=AFQjCNHaCQBku5dhluGI96lB2CfOJxYL5A&sig2=J-A-vhzCLpOaWeov84NvMA
- 52 http://www.google.co.jp/url?sa=t&rct=j&q=python メール送信 添付ファイル&source=web&cd=1&ved=0CDIQFjAA&url=http://d.hatena.ne.jp/aqvi/20081115/1226742281&ei=93CfTo
- 44 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja-JP-mac:official&hs=uXN&q=java+hudson+ruby&btnG=検索&lr=lang_ja&aq=f&oq=