python通过smtp协议发送邮件
# -*- coding: cp936 -*-
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import smtplib
import sys
import os
import datetime
import time
import subprocess
reload(sys)
sys.setdefaultencoding("utf-8")
mailto_list = ["lusongcool@163.com"] #目标邮箱
mail_host = "smtp.163.com"
mail_user = "lusongcool@163.com"
mail_pass = "********" #163邮箱smtp生成的密码
def send_mail(to_list, sub, content):
me = "LogServer"+"<"+mail_user+">"
msg = MIMEText(content, _subtype='plain', _charset='utf-8')
msg['Subject'] = sub
msg['From'] = me
msg['To'] = ";".join(to_list)
try:
server = smtplib.SMTP()
server.connect(mail_host)
server.login(mail_user, mail_pass)
server.sendmail(me, to_list, msg.as_string())
server.close()
return True
except Exception, e:
print str(e)
return False
if __name__ == '__main__':
send_mail(mailto_list, 'submit', 'content')
- 我这里选择的是163邮箱,没有同学需要注册一个。为什么直接用qq邮箱呢?qq邮箱即使打开了POP2/SMTP,在第三方打开qq邮箱时,还需要有一个授权码,这个授权码是开启SMTP时给你的,不好记,所以,选择使用163邮箱,方便了许多。
# -*- coding: cp936 -*-
为编码方式,不是普遍意义下的注释,不可随意去除。mailto_list = ["lusongcool@163.com"] #目标邮箱
mail_host = "smtp.163.com"
mail_user = "lusongcool@163.com"
mail_pass = "********" #163邮箱smtp生成的密码
你需要动的地方有目标邮箱,你申请的邮箱的账号和密码。
‘submit’和’content’为右键主题和内容,这里我们发送的是不带图片和附件的简单邮件。
更多内容请参考:
baidu一下