利用Python实现的一个自动群发或单发邮件的小脚本!(SMTP协议)
python3、利用SMTP实现自动发送邮件!
首先声明,这个是偶然从别人的博客里发现的,觉得比较有趣,就自身亲自尝试了一番,在此做了点儿比较详细的整理和一点点小小的优化!此处为原博客的链接地址!
https://www.cnblogs.com/Python1234/p/9118363.html
步骤:
1.发送QQ邮件,首先必须知道QQ邮箱的SMTP服务器!
2.发送邮件之前,必须开启qq邮箱的smtp服务
设置路径:设置--账户--开启截图上的服务--保存更改
3.Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件;
# 导入smtplib模块,smtplib负责发送邮件<br />import smtplib<br /># 导入email模块,email负责构造邮件<br />from email.mime.text import MIMEText<br /><br /># 创建类<br />class SendEmil:<br />global send_user<br />global email_host<br />global password<br /># password为相对应的16位授权码,开启服务时收到的16位授权码<br /> password = 'bkdzegokffjmhbei'<br /> # email的主机地址<br /> email_host = 'smtp.qq.com'<br /> # 由谁发送的,发送者<br /> send_user = '[email protected]'<br /><br /> def send_email(self,user_list,sub,content):<br /> user = "shape" + "<" + send_user + ">"<br /> # 构造MIMEText对象,第一个参数为邮件正文,第二个参数为MIME的图标类型,<br /> # plain表示纯文本,最终的MIME就是'text/plain';第三个参数使用编码utf-8保证多语言兼容性<br /> message = MIMEText(content,_subtype='plain',_charset='utf-8')<br /># 发送的邮件需要添加头部信息,包含发送者、接收者、邮件主题等信息;<br /> # 邮件主题<br /> message['Subject'] = sub<br /># 发送者<br /> message['From'] = user<br /># 接收者<br /> message['To'] = ";".join(user_list)<br /># 安全邮件,通过SSL发送,创建SSL安全连接<br /> server = smtplib.SMTP_SSL()<br /># 启用SSL连接,端口一般是465<br /> server.connect(email_host,465)<br /># login()登陆SMTP服务器<br /> server.login(send_user,password)<br /># sendmail()发邮件,可一次发给多人,此处用列表,邮件正文为str,<br /> # as_string()把MIMEText对象变成str<br /> server.sendmail(user,user_list,message.as_string())<br /># 关闭SMTP服务器连接<br /> server.close()<br /><br /># 在当前脚本下运行<br />if __name__ == '__main__':<br /># 实例化类<br /> send = SendEmil()<br /># 要发送的对象,可为多个<br /> user_list = ['[email protected]']<br /># 邮件标题<br /> <span>sub = '测试邮件'<br /> # 邮件内容<br /> content = '哈哈哈哈哈'<br /> # 发送<br /> send.send_email(user_list,<span>sub,content)<br />print("发送成功!")
相关推荐
zhangwentaohh 2020-09-16
文山羊 2020-08-16
xiaodaiwang 2020-06-12
vs00ASPNET 2020-02-19
jacktangj 2019-12-02
meylovezn 2019-10-23
诗眼天涯 2019-04-16
行吟阁 2020-07-04
JasonYeung 2020-06-07
oXiaoChong 2020-06-01
sunnyhappy0 2020-05-19
airfling 2020-05-19
singer 2020-05-06
winmeanyoung 2020-04-11
wenjs00 2020-03-06
zhangpan 2020-01-10
ITxiaobaibai 2020-01-03