这篇文章将为大家详细讲解有关怎么用Python实现批量生成法务函,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
情境问题
小王是一名法务专员,工作中会处理所在公司的侵权事件并向侵权方发送法务函。
他会按照【法务函模板.docx】 Word 文件给【封号名单.xlsx】工作簿中的每个封号人员生成一份法务函。
实现这个结果,他需要手动将【封号名单.xlsx】工作簿中的封号人员的名字和微信号添加到【法务函模板.docx】 Word 文件对应的位置上,并将【法务函模板.docx】 Word 文件另存为新的文件。
封号人员的人数有多少,他就得重复多少次。以第一个封号人员为例,实现过程如下图:
用Python实现:
代码实现:
# 案例 1:批量生成法务函from docx import Documentfrom docx.shared import Ptfrom openpyxl import load_workbook # 打开【封号名单.xlsx】工作簿,获取【封号人员】工作表title_wb = load_workbook('../工作/封号名单.xlsx')title_sheet = title_wb.active # 遍历【封号人员】工作表中的数据for row in title_sheet.iter_rows(min_row=2, values_only=True): # 获取“名字” name = row[0] # 获取“微信号” wxid = row[1] # 打开 Word 文件 doc = Document('../工作/法务函模板.docx') # 获取第六个 Paragraph 对象 para = doc.paragraphs[5] # 添加封号人员名字 run_name = para.add_run(name) # 字体加粗 run_name.font.bold = True # 字体加下划线 run_name.font.underline = True # 设置字体大小为 14 pt run_name.font.size = Pt(14) # 添加封号人员微信号 run_wxid = para.add_run(' 同学(WeChat ID: {})'.format(wxid)) # 设置字体大小为 14 pt run_wxid.font.size = Pt(14) # 按封号人员名字命名并保存文件到【法务函文件】文件夹 doc.save('../工作/法务函文件/法务函-{}.docx'.format(name))
关于“怎么用Python实现批量生成法务函”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。