Python將數據渲染到docx文檔指定位置


超簡單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里面的字段替換了,非常簡單!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM