本篇文章小编给大家分享一下python实现自动化办公邮件合并功能代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
如果word模板文件长这个样子(为了演示自动化办公效果,是随意写的):
当然,对于到进行邮件合并的位置,我们同样和word邮件合并一样,需要添加域。
有了,那么表格哪里找呢!对于初学者来说,对于这种实例性很强的项目,没有数据,可以宣布50%已经放弃了。那么,在以后的学习过程中,没有数据,当然我们要自己创造数据。如下代码所示,我们可以创建有name、mail、date的csv文件来,并且实现邮件合并的功能。
import pandas as pd import numpy as np import random import csv from mailmerge import MailMerge #生成姓名 def create_fname_data(): word_select = [] for i in range(97, 123): word_select.append(chr(i)) print(word_select) name_select = [] for i in range(6): name = '' for i in range(5): name += random.choice(word_select) name+=' ' for i in range(5): name += random.choice(word_select) name_select.append(name.title()) print(name_select) return name_select #生成邮箱 def create_mail(): word_select=[str(i) for i in range(9)] all_number_select=[] for i in range(6): number_select='' for i in range(10): number_select+=random.choice(word_select) endwith=['@163.com','@qq.com','@icloud.com'] number_select+=random.choice(endwith) all_number_select.append(number_select) return all_number_select #创建csv文件 def add_csv(): df=pd.DataFrame( { 'name':pd.Series(create_fname_data()), 'date':pd.Series(pd.date_range('20210101',periods=6)), "mail":pd.Series(create_mail()), } ) print(df) df.to_csv('./data/random_data.csv') if __name__ == '__main__': add_csv() with open('./data/random_data.csv',encoding='utf-8') as f:#邮件合并数据目录位置 reader=csv.reader(f) next(reader) for index,name,date,mail in reader: doc=MailMerge('./data/test1.docx')#模板文件目录 print(name,mail,date) doc.merge(name=name,mail=mail,date=date)#邮件合并 doc.write(f'./data/{name}.docx')#写入文件
下图是自动生成的word文档。
简简单单的几行代码就可以完成邮件合并功能,如果有几千份数据源,当然,稍微修改下代码,就可以在几秒钟完成邮件合并,岂不乐哉?
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔