python smtp给多人发送邮件

给多人发送邮件需要注意收件人传入的格式

def sendEmail():
    emailHost = "smtp.163.com"  # 获取smtp的host
    sender ="lihua@163.com"  # 获取发件人账号
    # 如果配置文件读取收件人列表,需要转换格式,配置文件收件人列表不需要加引号和括号,如下配置
    # recriver =lihua@163.com,lihua@163.com,lihua@163.com
    # 读取后转换格式为list
    recriver =  ["lihua@163.com,lihua@163.com,lihua@163.com"]   # 获取收件人账号,这个是列表类型
    recrivers = ",".join(recriver) 
    password = "授权码" # 获取发件人账号对应的授权码
    testReport = newReport()  # 获取需要发送的报告
    # 打开报告
    with open(testReport, "r", encoding="utf-8") as f:
        emailMessage = f.read()
    # 发送HTML格式邮件,内容为报告内容
    message = MIMEText(emailMessage, "html", "utf-8")
    message["From"] = Header(sender)  # 发件人
    message["To"] = Header(recrivers)  # 收件人
    subject = "接口自动化测试报告"  # 主题
    message["Subject"] = Header(subject, "utf-8")

    smtp = smtplib.SMTP_SSL(emailHost)  # 实例化smtp
    smtp.connect(host=emailHost, port=465)  # 连接邮箱
    smtp.login(sender, password)  # 登录邮箱
    
    smtp.sendmail(sender, recrivers.split",", message.as_string())  # 发送邮件
    smtp.quit()
    print("邮件发送成功")

if __name__ == '__main__':
    sendEmail()
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值