如何进行批量发不同附件到不同邮箱

如何进行批量发不同附件到不同邮箱

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
weixin_慕九州9379801 提问者 2021-08-30 13:56:34

没办法一健批量发送吗

  • 同学,你好!

    以上代码只需要把收件人的信息添加进列表,就可以右击鼠标点击运行发送邮件了,祝学习愉快!

    2021-08-30 14:40:00
好帮手慕凡 2021-08-30 13:20:31

同学,你好!

1、可以使用循环遍历不同的收件人信息进行发送;

http://img1.sycdn.imooc.com//climg/612c6a5e0963f80811920415.jpg

2、在实现邮件发送的函数里从参数中提取收件人信息和附件文档并添加进邮件主题;

http://img1.sycdn.imooc.com//climg/612c6a7b095aabbf09860724.jpg

3、发送邮件

http://img1.sycdn.imooc.com//climg/612c67f209920a8607320298.jpg

参考代码如下:

​# coding:utf-8

import time
import smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.mime.multipart import MIMEMultipart

def send(information):
# 第三方的smtp
mail_host = 'smtp.qq.com'
#发件人信息授权码
mail_user = '发件人邮箱'
mail_pass = '授权码'
sender = '发件人邮箱'
#收件人信息
receivers = [information[1]]
#定义带附邮件对象
message = MIMEMultipart()
message['From'] = Header(sender)
message['Subject'] = Header('python脚本测试', 'utf-8')
#需要发送的附件
attr = MIMEText(open(information[0]+".text", 'rb').read(), 'base64', 'utf-8')
#定义附件格式
attr['Content-Type'] = 'application/octet-stream'
attr['Content-Disposition'] = 'attachment;filename="send.py"'
#将附件添加到邮件主体
message.attach(attr)
message.attach(MIMEText('这是一个带附件的邮件', 'plain', 'utf-8'))
print('send start')
#发送邮件
try:
smtpobj = smtplib.SMTP()
smtpobj.connect(mail_host, 25)
#登录并发送邮件
smtpobj.login(mail_user, mail_pass)
smtpobj.sendmail(sender,receivers, message.as_string())
except smtplib.SMTPException as e:
print('error: %s' % e)
#个人信息
informations=[["小慕","1140315671@qq.com"],["小新","w88856388@163.com"]]
#循环发送邮件
for i in range(2):
send(informations[i])

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师