Python2.7でGMailから日本語メールを送信する
以前使っていたスクリプトを紛失してしまったので、ざっと書き直してこっちにもメモ。
#! /usr/bin/python2.7 # coding: utf-8 """ stdinの内容をGMailで 自分自身に送る """ import smtplib host, port = 'smtp.gmail.com', 465 username, password = 'XXXXXXXXXXXXXXXXXXXXX@gmail.com', 'YYYYYYYYYYYYYYYYYYYYY' import sys import os content = sys.stdin.read() # unicodization for enc in ['utf-8', 'cp932', 'euc-jp']: try: content = unicode(content, enc) except: pass subject = content.splitlines()[0].strip() body = content # build mail message message = u"""From: %s To: %s Subject: %s %s """ % (username, username, subject, body) # normalize newline character to CRLF message = message.replace('\r\n', '\n') message = message.replace('\r', '\n') message = message.replace('\n', '\r\n') message = message.encode('utf-8') smtp = smtplib.SMTP_SSL(host, port) smtp.ehlo() smtp.login(username, password) smtp.sendmail(username, username, message) smtp.quit()