怎么用Python自动群发邮件
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"怎么用Python自动群发邮件",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python自动群发邮件"吧!如何把收件人名字一
千家信息网最后更新 2026年11月01日怎么用Python自动群发邮件
这篇文章主要讲解了"怎么用Python自动群发邮件",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python自动群发邮件"吧!
如何把收件人名字一一对应
前提条件,我的解释器是 IDLE 3.6 (用惯了,不想升级)
以两个邮箱为例子。
to_emails=['123@qq.com','456@qq.com'] to_names=['怪盗基德','上杉绘梨衣']
自动群发邮件,处理收件人姓名时大多是用join函数处理,
形成以逗号分隔的字符串。
官方大大说:Header接受的第一个参数的数据类型必须要是字符串或者字节,列表是不能解码。
to_names=['怪盗基德','上杉绘梨衣'] msg['To'] = Header(",".join)But,我试了一下,没有用,两个邮箱的收件人都是怪盗基德,上杉绘梨衣。不确定是什么原因,不排除是版本问题,有网友知道可以跟我说一下哈。
1、遍历两个列表
import smtplib from email.mime.text import MIMEText from email.header import Header import time from_name = input('请输入发件人:') from_addr = input('请输入发件人邮箱:') password = input('请输入发件人邮箱授权码:') to_namelist = [] to_addrs = [] number=0 while True: name=input('请输入收件人:') to_namelist.append(name) email=input('请输入收件儿邮箱:') to_addrs.append(email) temp=input('(可群发)是否继续输入邮箱,输入n加回车键退出,输入任意键继续:') number=number+1 if temp=='n': break smtp_server ='smtp.qq.com' input_subject = input('请输入邮件主题:') text = input('请输入邮件内容:') for i in range(number): to_name=to_namelist[i] to_addr=to_addrs[i] msg = MIMEText(text,'plain','utf-8') msg['From'] = Header(from_name) msg['To'] = Header(to_name) msg['Subject'] = Header(input_subject) server = smtplib.SMTP_SSL() server.connect(smtp_server,465) server.login(from_addr, password) server.sendmail(from_addr,to_addr, msg.as_string()) server.quit() now=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) print(now) print('邮件发送成功!')2、将两个列表通过csv放进Excel表格里,再通过读取Excel表格进行循环
import time import smtplib from email.mime.text import MIMEText from email.header import Header import csv #发件人信息 from_addr='1499823573@qq.com' password='xzrbanqjofkugaei' #如果有Excel表格就不用新建了,没有csv就得考虑新建csv文件 #方式一:通过现有列表新建csv文件 #data=[['怪盗基德','123@qq.com'],['上杉绘梨衣','@456.com']] #方式二:通过输入形成列表再新建csv文件 dataemail=[] dataname=[] data=[] number=0 while True: input_name=input('请输入收件人称呼(可随意写):') dataname.append(input_name) input_email=input('请输入收件人邮箱账号:') dataemail.append(input_email) b=input('是否继续输入,n退出,任意键继续:') number=number+1 if b=='n': break i=0 for i in range(number): data.append([dataname[i],dataemail[i]]) with open('C:/Users/ASUS/Desktop/邮箱数据.csv','a',newline='') as f: writer=csv.writer(f) for row in data: writer.writerow(row) input_fromname=input('请输入发件人:') input_subject=input('请输入邮件主题:') text=input('请输入邮件群发内容:') with open('C:/Users/ASUS/Desktop/邮箱数据.csv','r') as f: reader=csv.reader(f) for row in reader: to_addrs=row[1] to_name=row[0] #text='ncoqw' msg=MIMEText(text,'plain','utf-8') msg['From']=Header(input_fromname) msg['To']=Header(to_name) msg['Subject']=Header(input_subject) server=smtplib.SMTP_SSL() server.connect('smtp.qq.com',465) server.login(from_addr,password) server.sendmail(from_addr,to_addrs,msg.as_string()) server.quit() now=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) print(now) print('邮件发送成功!')这里有个点刚开始没想到
data.append([dataname[i],dataemail[i]])
感谢各位的阅读,以上就是"怎么用Python自动群发邮件"的内容了,经过本文的学习后,相信大家对怎么用Python自动群发邮件这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
输入
邮件
邮箱
收件人
发件人
两个
内容
上杉
基德
数据
文件
表格
学习
成功
主题
字符
字符串
方式
问题
处理
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网络科技
上海挚品互联网科技有限公司
科技和互联网公司
金融科技还是互联网
科技制造互联网公司
猪兼强互联网科技
贷财互联网科技
无线互联网科技
西安互联网科技公司
互联网科技论坛
云创客互联网科技公司
福州新华互联网科技学校 知乎
互联网科技与管理
重庆互联网医院沙龙医盟信息科技
辽宁互联网新科技
呼和浩特新华互联网科技学院
洛阳共同富裕互联网科技有限公司
工业互联网等科技实现智能化赋能
上海互联网科技公司ppt
互联网科技包装股
科技和互联网公司
深圳科技互联网
狮子座互联网科技有限公司
博兴的互联网电子科技公司
恒银科技与互联网金融
湖北码尼互联网科技有限公司电话
洛阳共同富裕互联网科技有限公司
互联网科技收购价值
北京品多多互联网科技有限公司
互联网的黑科技实验室