python发送邮件
作为一名实验狗,跑深度学习需要大量的时间,当我们无法预估程序还有多久跑完的时候可以在程序结尾加上发送email的功能,将实验结果发送到手机邮箱,方便我无缝衔接快速开始下一个实验
1. 为邮箱开启SMTP服务
python使用库smtplib发送邮件,需要邮件本身开启SMTP服务,下面以QQ邮箱为例展示如何开启SMTP。
首先打开QQ邮箱点击设置
选择账户后下拉找到以下界面
注意我们所需要的是 IMAP/SMTP服务,点击开启,会看到以下界面
用该邮箱的密保手机向其指定号码发送短信后,点击我已发送,成功生成授权码,这个授权码建议拍个照保存下,一会写代码要用。至此你的邮箱已经成功开启STMP服务了。
2. 发送纯文本邮件
import smtplib from email.mime.text import MIMEText def send_email(content): #content即为想要发送的信息 #设置服务器所需信息 #qq邮箱服务器地址 mail_host = 'smtp.qq.com' #qq号 mail_user = '********' #密码(部分邮箱为授权码) mail_pass = '在此处填入刚刚得到的授权码' #邮件发送方邮箱地址 sender = '********@qq.com' #邮件接受方邮箱地址,注意需要[]包裹,这意味着你可以写多个邮件地址群发 receivers = ['********@qq.com'] #设置email信息#邮件内容设置 message = MIMEText(content,'plain','utf-8') #邮件主题 message['Subject'] = 'title' #发送方信息 message['From'] = sender #接受方信息 message['To'] = receivers[0] #登录并发送邮件 try: smtpObj = smtplib.SMTP() #连接到服务器 smtpObj.connect(mail_host,25) #登录到服务器 smtpObj.login(mail_user,mail_pass) #发送 smtpObj.sendmail( sender,receivers,message.as_string()) #退出 smtpObj.quit() print('success') except smtplib.SMTPException as e: print('error',e) #发送失败"
标签:
python发送邮件