温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何用python自动发邮箱

发布时间:2020-07-03 13:38:21 来源:亿速云 阅读:192 作者:清晨 栏目:编程语言

小编给大家分享一下如何用python自动发邮箱,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

正文

废话不多说,直接上代码。

一、普通文本邮件(作通知训练结束用 :smiley: )

# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText    # 第三方 SMTP 服务 mail_host = "smtp.163.com"  # SMTP服务器 mail_user = "yourname"  # 用户名 mail_pass = "xxx"  # 密码(这里的密码不是登录邮箱密码,而是授权码)    sender = 'yourname@163.com'  # 发件人邮箱 receivers = 'othername@163.com']  # 接收人邮箱       content = 'Python Send Mail ! 训练结束!' title = 'Python SMTP Mail 训练结束'  # 邮件主题 message = MIMEText(content, 'plain', 'utf-8')  # 内容, 格式, 编码 message['From'] = "{}".format(sender) message['To'] = ",".join(receivers) message['Subject'] = title    try:     smtpObj = smtplib.SMTP_SSL(mail_host, 465)  # 启用SSL发信, 端口一般是465     smtpObj.login(mail_user, mail_pass)  # 登录验证     smtpObj.sendmail(sender, receivers, message.as_string())  # 发送     print("mail has been send to {0} successfully.".format(receivers)) except smtplib.SMTPException as e:     print(e)

二、加强版附件传输邮件

# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.header import Header # Files' Paths: file1 = 'mail.py' file2 = 'maill.py' # 收邮件的地址,可以多个。 Receivers = ['receiver1@163.com','receiver2@163.com']  # 邮件主题: title = 'Python SMTP 邮件(文件传输)' # 模拟服务器 # SMTP服务器 SMTPServer="smtp.163.com" # 发邮件的地址 Sender="yourname@163.com" # 发送者邮件的授权密码,去163邮箱设置里获取。并非是密码。 passwd="xxx"   # 创建一个带附件的实例 message = MIMEMultipart() message['From'] = Sender message['To'] = ",".join(Receivers) message['Subject'] = title # 邮件正文内容 message.attach(MIMEText('附件中是要传输的文件。\n ', 'plain', 'utf-8')) message.attach(MIMEText('The files you need are as followed. \n ', 'plain', 'utf-8')) # 构造附件1 att1 = MIMEText(open(file1, 'rb').read(), 'base64', 'utf-8') att1["Content-Type"] = 'application/octet-stream' att1["Content-Disposition"] = 'attachment; filename={0}'.format(file1) message.attach(att1) # 构造附件2 att2 = MIMEText(open(file2, 'rb').read(), 'base64', 'utf-8') att2["Content-Type"] = 'application/octet-stream' att2["Content-Disposition"] = 'attachment; filename={0}'.format(file2) message.attach(att2) try:     mailServer = smtplib.SMTP(SMTPServer, 25)  # 25为端口号(邮件),0-1024都被系统占用了     # 登录邮箱     mailServer.login(Sender, passwd)  # 需要的是,邮箱的地址和授权密码     # 发送文件     mailServer.sendmail(Sender, Receivers, message.as_string())     print("邮件发送成功")     print("Mail with {0} & {1} has been send to {2} successfully.".format(file1,file2,Receivers)) except smtplib.SMTPException as e:     print("Error: 无法发送邮件")     print(e)

后话

可以把代码加到网络train.py的最后,别忘了在train.py的开头加上:

# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.header import Header

然后你就可以专心忙自己的事情,网络训练结束就自动发邮件啦~

看完了这篇文章,相信你对如何用python自动发邮箱有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI