码迷,mamicode.com
首页 > 编程语言 > 详细

超简单Python将指定数据插入到docx模板指定位置渲染并保存

时间:2019-03-13 23:04:25      阅读:1361      评论:0      收藏:0      [点我收藏+]

标签:from   pos   sdn   表达式   text   exce   模板   imp   图片   

超简单Python将指定数据插入到docx模板渲染并生成

最近有一个需求,制作劳动合同表,要从excel表格中将每个人的数据导入到docx劳动合同中,重复量很大,因此可以使用python高效解决。为了让模板内容不变动,这里使用了类似jinja2的渲染引擎,使用{{ }}插值表达式把数据插入进去。也可以使用{% %}循环,条件语法等。

docx模板如下(在需要插值的位置填充 {{}} 表达式):

技术图片

首先安装docxtpl

$ pip install docxtpl

python代码如下:

from docxtpl import DocxTemplate
tpl = DocxTemplate('劳动合同.docx')
#这些字段从csv中获取
context = {
   "name": name,
   "department": department,
   "position": position,
   "time": time,
   "id": id_card,
   "addr": addr,
}
tpl.render(context)
tpl.save("{}的劳动合同.docx".format(name))

运行后就可以在docx中看到效果,{{ field }}这里已经被context里面的字段替换了,非常简单!

超简单Python将指定数据插入到docx模板指定位置渲染并保存

标签:from   pos   sdn   表达式   text   exce   模板   imp   图片   

原文地址:https://www.cnblogs.com/PyKK2019/p/10527252.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!