风变编程(Python自学笔记)第17关-邮件还能这么发!
2021/6/20 20:28:14
本文主要是介绍风变编程(Python自学笔记)第17关-邮件还能这么发!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第17关—邮件还能这么发!
群发邮件模板:
# smtplib 用于邮件的发信动作 import smtplib # email 用于构建邮件内容 from email.mime.text import MIMEText # 用于构建邮件头 from email.header import Header #引用csv模块 import csv # 发信方的信息:发信邮箱,QQ邮箱授权码 #from_addr=input('请输入发件人邮箱:') #passport=input('请输入发件人邮箱的授权码:') from_addr='XXXXXX' passport='XXXXXX' # 发信服务器 smtp_server='smtp.qq.com' #邮件内容 text = '''亲爱的XXX,你好! 期末复习周请抓紧复习! go for it! just do it! ''' # 待写入csv文件的收件人数据:人名+邮箱 # 记得替换成你要发送的名字和邮箱 #如:data = [['顾佳凯1号 ', 'gujiakaitop@163.com'],['顾佳凯2号', 'gujiakai2021@outlook.com']] data=[['姓名','邮箱地址'],['xxx','xxx']] # 写入收件人数据 with open(r'xxx.csv文件的绝对路径','w',newline='') as f: writer=csv.writer(f) for row in data: writer.writerow(row) # 读取收件人数据,并启动写信和发信流程 with open(r'xxx.csv文件的绝对路径','r',newline='',encoding='utf-8') as f: reader=csv.reader(f) for row in reader: to_addrs=row[1] msg = MIMEText(text,'plain','utf-8')# 邮箱正文内容,第一个参数为内容,第二个参数为格式(plain 为纯文本),第三个参数为编码 #邮件头信息 msg['From'] = Header(from_addr) msg['To'] = Header(",".join(to_addrs)) msg['Subject'] = Header('xxx') # 开启发信服务 server = smtplib.SMTP() server.connect(smtp_server, 25) # 登录发信邮箱 server.login(from_addr, passport) # 发送邮件 try: server.sendmail(from_addr, to_addrs, msg.as_string()) print('恭喜,发送成功') except: print('发送失败,请重试') # 关闭服务器 server.quit()
这篇关于风变编程(Python自学笔记)第17关-邮件还能这么发!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型