python学习

Python学习九十四天:Python批量发送邮件

2019-05-28  本文已影响2人  暖A暖

1.SMTP协议

2.Python的smtplib库

3.开启邮箱SMTP协议

在使用SMTP协议发送邮件之前需要先查看发件人的邮箱是否开启SMTP协议,如qq邮箱的开启协议的方式是:找到邮箱的设置-->在设置页面中选择账户设置-->选择开启服务中的SMTP服务开启,点击开启后会弹出一个验证保密窗口,验证成功后就会自动生成授权码,这个授权码在发送邮件时会用到;

4.使用SMTP发送邮件

import smtplib
from email.mime.text import MIMEText
from const_file import passwd

def send_email(from_addr, to_addr, subject, password):
    msg = MIMEText("邮件正文",'html','utf-8')
    msg['From'] = from_addr
    msg['To'] = to_addr
    msg['Subject'] = subject
    smtp_server = smtplib.SMTP('smtp.qq.com')
    smtp_server.login(from_addr, password)
    smtp_server.send_message(msg=msg)
if __name__ == "__main__":
    # passwd填写认证密码,不是登录密码
    send_email("邮箱地址", "邮箱地址", "这是一封测试邮件", passwd)

5.邮件的批量发送

import smtplib
from email.mime.text import MIMEText
from const_file import passwd

def send_email(from_addr, to_addr, subject, password):
    msg = MIMEText("邮件正文",'html','utf-8')
    msg['From'] = from_addr
    msg['To'] = to_addr
    msg['Subject'] = subject
    smtp_server = smtplib.SMTP('smtp.qq.com')
    smtp_server.login(from_addr, password)
    smtp_server.send_message(msg=msg)

if __name__ == "__main__":
    send_list = ['a@163.com', 'b@163.com', 'c@163.com']
    for to_addr in send_list:
        send_email("邮箱地址", to_addr, "这是一封测试邮件", passwd)

参考:https://www.9xkd.com/user/plan-view.html?id=3823903948

上一篇 下一篇

猜你喜欢

热点阅读