
【千锋教育干货暴击】
如果你想更好的学习python乃至转行,弯道超车,快人一步!本课程零基础即可加入学习,抓住大数据、机器学习、人工智能时代的红利,开启你的第一行代码吧!
↓ ↓ ↓
千锋教育Python教程_700集零基础Python入门到精通教程(保姆级新手教程)
千锋教育Python教程全套_python零基础入门到精通(学完可达到Python工程师水平)

在看办公自动化之前,我们来看一下百度百科给出的定义:

而我们Python进行办公自动化又需要学习什么样的知识呢?
或许这是很多非 IT 职场人士面临的困惑,想把 python 用到工作中,却不知如何下手?python 在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音。
大家注意啊批量处理!!!,如果你只有几份文件那用不用Python也无所谓,但是如果量比较大Python进行办公自动化可就是各位的福音啦!
其实所谓的自动化办公无非是 excel、ppt、word、邮件、文件处理、数据分析处理等。
本篇文章主要给大家介绍word自动化的操作和案例。
Windows用户打开命令行输入:pip install python-docx docx-mailmerge Mac用户打开终端/Terminal输入:pip3 install python-docx docx-mailmerge
如果无法安装,可以转换为国内清华镜像源(当然其他的也没有问题了),Windows系统操作如下,在cmd模式下输入
pip install python-docx docx-mailmerge -i https://pypi.tuna.tsinghua.edu.cn/simple
导入模块:

近年由于疫情关系,部分公司压力山大,不得不裁员或者加班。这不又有10位员工离职了。而在人力那里不仅要办一些离职的交接工作,还需要给这些离职的员工开具离职证明!
首先看一下离职证明的模版样式

如果人力资源的妹妹们,一个一个的填写太麻烦了。这个也是相当费时间的。如果哦一不小心写错了还要重来。
那如何快速的生成多份证明呢?这不办公自动化轻松帮人力朋友搞定。
所有要离职的员工信息都在一个表格中,我们只需要将表格的数据填充到离职证明中即可。
表格信息如下(展示部分数据):

会使用Pandas读取表格数据
能够获取表格中的每个单元格数据
安装了python-docx和docx-mailmerge
会设置word的邮件合并域
将word模版与excel进行结合
保存word文档
模版域设
现有离职证明模版,需要提前设置模版的域,操作方式如下(wps为例演示):
1. 打开模版文件
2. 选择插入 ----> 域

3. 设置邮件合并域

4. 注意表格头是于提供的excel的表头名称一致,此时就可以看到模版的姓名位置出现了<<姓名>>说明完成。后面按照此操作依次添加即可。
最终结果如下:

import time
from mailmerge import MailMerge
import pandas as pd
# 获取excel的数据文件
df=pd.read_excel(&#39;employee.xlsx&#39;)
df[&#39;入职日期&#39;] = df[&#39;入职日期&#39;].apply(lambda x: x.strftime(&#39;%Y年%m月%d日&#39;))
df[&#39;离职日期&#39;] = df[&#39;离职日期&#39;].apply(lambda x: x.strftime(&#39;%Y年%m月%d日&#39;))
# 获取模版文件
document_1 = MailMerge(&#39;离职证明.docx&#39;)
# 遍历获取每行数据
for i in range(df.shape[0]):
# 将获取的数据设置到模版的域中
document_1.merge(姓名=df.loc[i][&#39;姓名&#39;],性别=df.loc[i][&#39;性别&#39;], 身份证号码=str(df.loc[i][&#39;身份证号码&#39;]), 入职日期=df.loc[i][&#39;入职日期&#39;],部门=df.loc[i][&#39;部门&#39;],职位=df.loc[i][&#39;职位&#39;],离职日期=df.loc[i][&#39;离职日期&#39;],时间=time.strftime(&#39;%Y年%m月%d日&#39;,))
name = df.loc[i][&#39;姓名&#39;]
document_1.write(f&#39;{name}离职证明.docx&#39;)

需要资料也可以关注微信公众号:Python专栏,事不宜迟,一起进步吧!
