python基于模板自动生成报告
进行数据分析,难免需要撰写分析报告,但是对需要经常分析的项目来说,每次都要重新创建并撰写报告比较麻烦,故将其集成到流程中会方便很多。这里我选择的是python库docxtpl。该库可以使用docx文档作为模板,使用类似jinja2语法的标签进行模板填充,能很好的满足我的需求,同时也容易上手。
一、安装
docxtpl库的安装比较简单,直接使用pip安装即可
pip install docxtpl
二、使用
docxtpl库的使用也很简单,下面举例进行说明常用的简单功能。
示例代码:
from docxtpl import DocxTemplate, InlineImage
from docx.shared import Mm
doc = DocxTemplate("t.docx") # 读取模板
context = {
"text": "测试", # 文本信息
"image": InlineImage(doc, 'tests/templates/bottle.png',width=Mm(160)), # 图片信息
"table1": [{'a':"col1",'b':"col2",'c':"col3"}], # 表格
"table2": [{'col':["col11","col12","col13","col14","col15"]},{'col':["col21","col22","col23","col24","col25"]}] # 动态表格
}
doc.render(context) # 基于内容渲染模板
doc.save('test.docx') # 生成报告
模板文件为:
生成结果文件为:
参考链接:
- docxtpl github: https://github.com/elapouya/python-docx-template
- docxtpl官方文档:https://docxtpl.readthedocs.io/en/latest/
版权声明:本文转载请注明出处!
最新评论:
发表评论
电子邮件地址不会被公开。 必填项已用*标注