需求:
在linux 服务器跑完实验后,自动发送邮件提醒
实现:
python3中的smtplib以及QQ邮箱(需要去QQ邮箱获得授权码,百度一下即可)
代码:
# file name: dmlemail.py
# 千万不要命名为email.py
import smtplib
from email.mime.text import MIMEText
import sys
MAIL_USER = "[email protected]" # 用于发送通知的邮箱
MAIL_PWD = "xxxxxxxxxxx" # 该邮箱的授权码
def mail(mail_subject, mail_text, mail_to):
msg = MIMEText(mail_text)
msg['Subject'] = mail_subject
msg['From'] = MAIL_USER
msg['To'] = mail_to
send = smtplib.SMTP_SSL("smtp.qq.com",465)
send.login(MAIL_USER, MAIL_PWD)
send.send_message(msg)
send.quit()
def main(argv):
mail_subject= 'experiment: '+ argv[1]+' finished.'
mail_text='A new wonderful day!'
#自己发给自己
mail_to = MAIL_USER
mail(mail_subject, mail_text, mail_to)
print('email sent')
if __name__ == '__main__':
main(sys.argv)
使用:
在实验脚本的下一行填入即可,这样实验跑完就会自动发邮件提醒了!
python dmlmail.py experiment_name