#利用csv 模块群发邮件,且csv文件中第一列为name,二列为email
import csv
import smtplib
#以下为引入email 包中构建内容的方法
from email.mime.text import MIMEText #MIMEText 模块内容形式为纯文本,HTML页面
from email.mime.image import MIMEImage #MIMEImage 模块内容形式为图片
from email.mime.multipart import MIMEMultipart #MIMEMultipart 模块为多形式组合,可包含文本和附件
from email.header import Header #header()是用来构建邮件头文件
username=input('发件箱账号:') #发件人
password = input('请输入授权码:') #授权码
smtp_server = input('发信服务器:(qq邮箱为smtp.qq.com)')
data_header = input('邮件主题:')
data=input('正文内容:\n')
with open('d:/python/11.25/to_addr.csv','r') as f: #利用csv模块群发邮件
reader = csv.reader(f)
for row in reader:
to_addr=row[1] #已保存的csv文件中第一列(row[0])为姓名,第二列(row[1])为邮箱
msg = MIMEText(data,'plain','utf-8')
msg['From'] = Header(username) #标题显示发件人
msg['To'] = Header(to_addr) #标题显示收件人 ,只接受字符串,可以使用str.jion(list),把列表中的元素转化为字符串
msg['Subject'] = Header(data_header) #标题显示邮件主题
server = smtplib.SMTP_SSL(smtp_server) #邮箱格式
server.connect(smtp_server, 465) #连接邮箱服务器
server.login(username,password) #登录邮箱
try:
server.sendmail(username,to_addr,msg.as_string())
#sendmail 三个参数:发件人地址;收件人地址;as_string()是将发送的信息msg变为字符串类型
except:
print('发送失败,请重试!')
server.quit() #退出服务器,结束SMTP回话
菜鸟编程之qq邮箱群发
最新推荐文章于 2023-07-31 15:31:51 发布