我用Python批量读取考生成绩单,并自动发送录取通知书邮件
点击上方“Python爬虫与数据挖掘”,进行关注
回复“书籍”即可获赠Python从入门到进阶共10本电子书

01
前言

02
准备工作


03
实战演练
#安装模块
pip install docxtpl
pip install zmail
#导入模板库
from docxtpl import DocxTemplate
import pandas as pd
#导入邮件库
import zmail
import time
#读取数据源
df=pd.read_excel('123邮件合并数据源.xls')
print(df)
#Word邮件合并批量生成录取通知书
for i in range(len(df)):
    #以字典形式存储模板中需要更新的关键信息
    contxt=dict(df.iloc[i])
    #获取姓名,作为文件名
    filename=contxt['姓名']
    #获取邮箱地址
    youxiang=contxt['邮箱']
    #打开模板文件
    tpl = DocxTemplate('邮件合并模板.docx')
    #渲染(更新)模板文件生成新文件
    tpl.render(contxt)
    #保存文件
    tpl.save(filename+'.docx')




终于拿到授权码(Python发送QQ邮件必备参数):

    #设置邮件主题
    subject='录取通知书'
    #设置邮件内容
    content='你己被我校录取,请妥善保管通知书,并按时报到!'
    #设置邮件附件
    attachment=filename+'.docx'
    #设置邮件信息
    mail={'subject':subject,'content_text':content,'attachments':attachment}
    #设置发件邮箱
    server = zmail.server('你的@qq.com','你的授权码')
    #发送邮件
    server.send_mail(youxiang,mail)
    time.sleep(2)
    print('第'+str(i+1)+'封邮件己发送成功')
04
完整代码
#导入模板库
from docxtpl import DocxTemplate
import pandas as pd
#导入邮件库
import zmail
import time
#读取数据源
df=pd.read_excel('123邮件合并数据源.xls')
print(df)
#生成文件并以附件形式发送到邮箱
for i in range(len(df)):
    #以字典形式存储模板中需要更新的关键信息
    contxt=dict(df.iloc[i])
    #获取姓名,作为文件名
    filename=contxt['姓名']
    #获取邮箱地址
    youxiang=contxt['邮箱']
    #打开模板文件
    tpl = DocxTemplate('邮件合并模板.docx')
    #渲染(更新)模板文件生成新文件
    tpl.render(contxt)
    #保存文件
    tpl.save(filename+'.docx')
    #设置邮件主题
    subject='录取通知书'
    #设置邮件内容
    content='你己被我校录取,请妥善保管通知书,并按时报到!'
    #设置邮件附件
    attachment=filename+'.docx'
    #设置邮件信息
    mail={'subject':subject,'content_text':content,'attachments':attachment}
    #设置发件邮箱
    server = zmail.server('你的@qq.com','你的授权码')
    #发送邮件
    server.send_mail(youxiang,mail)
    time.sleep(2)
    print('第'+str(i+1)+'封邮件己发送成功')
print('邮件己全部发送成功')
------------------- End -------------------
往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧!
评论
