吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5104|回复: 51
收起左侧

[Python 转载] python 批量生成word文件

  [复制链接]
木头MT 发表于 2021-8-1 11:00
最近看到有替换word的数据的工具,顺手发一个生成word文件的
可以用来批量生成word文件
比如批量填一个什么申请书啊
生成一下各种证书啊
最主要就是减少重复作业
偷懒万岁!!!
具体是用word的mailmerge功能
先制作word模板
点击 插入》文档部件》域
image.png
选择邮件合并 输入名称 推荐使用数据的字段名
image.png
得到下图模板
image.png


现在去随便弄几组数据
image.png
我这里用的是csv
看个人喜好吧
贴一下代码
[Python] 纯文本查看 复制代码
##########################
#      author: mtou      #
##########################

from mailmerge import MailMerge
import pandas as pd

def rd_data(file_path):
    data=pd.read_csv(file_path, encoding='gbk',header=None)  # 读取取csv文件 且读取中文
    return data
def mk_dict(data,i):
    d = dict(zip(data.loc[0], data.loc[i]))
    return d
def sd_data(file_path,data_dict,save_path):
    doc = MailMerge(file_path)
    print("Fields included in {}: {}".format(file_path, doc.get_merge_fields()))
    doc.merge(**data_dict)
    save_path = save_path + "%s.docx" % data_dict['name']
    doc.write(save_path)
    print('Saved file to the path :%s'%save_path)
    return save_path
if __name__ == '__main__':
    file_path=r'模板.docx' #模板路径
    save_path=r'请假条/' #文件保存路径
    data_path=r'data.csv' #数据文件路径
    data=rd_data(data_path)
    rows = data.shape[0] - 1
    i = 1
    while i <= rows:
        mydict = mk_dict(data, i) #每一行数据都制作成一个字典
        sd_data(file_path, mydict,save_path) #发送数据到docx
        i+=1
    print('Finish')

运行一下
image.png
image.png
image.png
image.png
打完收工
附上文件 请假条.zip (10.91 KB, 下载次数: 177)
咳咳 喜欢的话请咳咳DDDD
偷懒万岁!!!

免费评分

参与人数 10吾爱币 +10 热心值 +7 收起 理由
rnj + 1 + 1 我很赞同!
ArcTime + 1 + 1 热心回复!
zzw1004 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
灵儿 + 1 鼓励转贴优秀软件安全工具和文档!
heiheixue3344 + 1 谢谢@Thanks!
yangxiaohua + 1 + 1 我很赞同!
alex-1995 + 1 + 1 我很赞同!
若白 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
yuze0804007 + 1 + 1 热心回复!
cjcmxc + 1 + 1 --------

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

marman 发表于 2021-8-1 11:33
好东西都是懒人发明的
 楼主| 木头MT 发表于 2021-8-1 11:09
angle951 发表于 2021-8-1 11:06
感谢楼主,这有点离谱啊哈哈哈哈,太能偷懒了

如果你是文秘类工作 给客户发个邀请函 咱这样偷个懒是不是就很香 做完就可以摸鱼
angle951 发表于 2021-8-1 11:06
感谢楼主,这有点离谱啊哈哈哈哈,太能偷懒了
angle951 发表于 2021-8-1 11:16
木头MT 发表于 2021-8-1 11:09
如果你是文秘类工作 给客户发个邀请函 咱这样偷个懒是不是就很香 做完就可以摸鱼

那傻13学生会也要这些玩意儿,就是拿来做邀请函,系主任鬼迷鬼眼的啥都想要弄
这东西太方便了,一件格式化
yjn866y 发表于 2021-8-1 11:38
tve 这个可以偷。。。
xrdmwan 发表于 2021-8-1 11:40
有意思,把邮件合并的分割功能解决了!
XiaoXin10 发表于 2021-8-1 11:42
收藏了,需要的时候再来
shen12wang 发表于 2021-8-1 12:08
看着就觉得香
哆啦A梦 发表于 2021-8-1 12:15
office自带的功能,还整那么麻烦?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 00:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表