需要给以下学员发送作业反馈邮件(文件名为:学员作业反馈.xlsx)
学员序号 | 学员姓名 | 学员邮箱 | 作业反馈 |
20090001 | 海龙 | 3177261496@qq.com | 第1题:少了一个a |
20090002 | 真达 | 3177261496@qq.com | 第2题:少了一个b |
20090003 | 张三 | 3177261496@qq.com | 第3题:少了一个c |
20090004 | 赵四 | 3177261496@qq.com | 第4题:少了一个d |
20090005 | 王五 | 3177261496@qq.com | 第5题:少了一个e |
20090006 | 海龙 | 3177261496@qq.com | 第6题:少了一个f |
20090007 | 真达 | 3177261496@qq.com | 第7题:少了一个g |
20090008 | 海龙 | 3177261496@qq.com | 第8题:少了一个h |
20090009 | 真达 | 3177261496@qq.com | 第9题:少了一个i |
20090010 | 海龙 | 3177261496@qq.com | 第10题:少了一个j |
实现代码如下:
# 导入发送邮件的工具包
import smtplib
# 导入邮件内容的工具包
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
# 导入读取Excel的工具包
import pandas as pd
# 设置登录的用户名和密码
sender = '172***6917@qq.com'
password = 'wrdnb******vcjdi'
# 设置发件人和收件人邮箱
receiver = '172***6917@qq.com'
# 读取收件人邮箱和邮件内容
df = pd.read_excel('./学员作业反馈.xlsx')
for i in range(len(df)):
student_name = df['学员姓名'][i]
student_email = df['学员邮箱'][i]
feed_back = df['作业反馈'][i]
print(student_name,student_email,feed_back)
# 定义邮件主题、发件人、收件人
msg = MIMEMultipart('mixed')
msg['Subject'] = f'第{i}封邮件,{student_name}同学的作业反馈'
msg['From'] = '172***6917@qq.com'
msg['To'] = f'{student_email}'
#构造html邮件内容,从邮箱复制出来
html = f"""
<div>{student_name} 同学:</div>
<div>你好。你的作业反馈如下:</div>
<div>{feed_back}</div>
<div>请查收,谢谢。</div>
<div>曹鑫CDA</div>
"""
text_html = MIMEText(html, 'html', 'utf-8')
msg.attach(text_html)
# 发送邮件
smtp = smtplib.SMTP()
smtp.connect('smtp.qq.com',25)
smtp.login(sender, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()
运行效果: