Grok分析结论可自动填入标准Word报告模板,通过结构化标记(如【核心结论】)对接全角井号占位符(如#CORE_CONCLUSION#),用python-docx精准替换并保留格式,再批量写入表格数据,最终生成格式一致的正式报告。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜
你需要让grok生成的分析结论自动落进标准格式的word报告里,而不是复制粘贴后手动调格式、改标题、对齐表格——这种操作既打断思考流,又容易漏掉页眉页脚或段落间距等细节。准备Grok输出与Word模板的对接结构
先确认Grok返回的是结构化文本:必须含明确分节标记(如“【核心结论】”“【数据摘要】”“【风险提示】”),且每节内用换行分隔条目。若Grok输出为纯段落无标记,需在调用时加提示词约束,例如:“请严格按以下格式输出:【核心结论】\n1. ……\n2. ……\n【数据摘要】\n- 销售额:XX万元\n- 同比:+X%”。
新建一个Word模板文件(report_template.docx),仅保留基础样式:标题1设为黑体小二、正文为微软雅黑小四、所有段落首行缩进2字符、1.5倍行距。不要插入任何实际内容,只留占位符,例如在正文区写“#CORE_CONCLUSION#”“#DATA_SUMMARY#”“#RISK_ALERT#”。
【占位符必须全角井号包围,且前后无空格】 python-docx默认按run切分文本,半角符号或带空格的占位符会导致替换失败或错位。
用python-docx加载模板并定位占位符
方法一:遍历所有段落逐行扫描
立即学习“Python免费学习笔记(深入)”;
from docx import Document
doc = Document("report_template.docx")
for para in doc.paragraphs:
if "#CORE_CONCLUSION#" in para.text:
para.text = para.text.replace("#CORE_CONCLUSION#", "这里是Grok生成的核心结论内容")
方法二:用runs精准控制格式继承(推荐)
for para in doc.paragraphs:
for run in para.runs:
if "#CORE_CONCLUSION#" in run.text:
old_text = run.text
run.text = run.text.replace("#CORE_CONCLUSION#", "")
run.add_text("Grok结论内容")
run.font.bold = True # 继承原run字体加粗状态
注意:方法二能保留原有字体、颜色、高亮等格式属性,避免替换后整段变宋体或字号错乱。
批量填充多组占位符并写入表格
第一步:定义占位符映射字典
🎯 HR面试评价助手(Word版格式) 生成可直接复制到Word文档的标准格式HR面试评价 【使用方式】 1. 发送口令:HR面试评价 2. 粘贴JD文字 3. 上传简历文档 4. 上传面试记录(可选) 5. 复制生成的评价到Word 【输出特点】 - 纯文本格式,可直接粘贴到Word - 层次清晰,标题加粗...
replacements = {
"#CORE_CONCLUSION#": "AI模型识别出Q2订单量环比上升12%,主要来自华东区新客户导入",
"#DATA_SUMMARY#": "销售额:2876万元;同比:+11.3%;毛利率:34.2%",
"#RISK_ALERT#": "华北区库存周转天数达92天,超出安全阈值(60天)"}
第二步:执行段落级替换
for para in doc.paragraphs:
original_text = para.text
for placeholder, content in replacements.items():
if placeholder in original_text:
para.text = original_text.replace(placeholder, content)
break
第三步:向指定表格填入Grok结构化数据
假设模板中第三个表格用于展示明细数据,且第一行是表头:
table = doc.tables[2] # 索引从0开始
# 清空除表头外的所有行
for i in range(len(table.rows) - 1, 0, -1):
table._tbl.remove(table.rows[i]._tr)
# 插入Grok返回的3条明细
data_rows = [
["产品A", "124台", "+8.2%"],
["产品B", "89台", "-3.1%"],
["产品C", "203台", "+15.7%"]
]
for row_data in data_rows:
row = table.add_row()
for i, cell in enumerate(row.cells):
cell.text = row_data[i]
保存最终报告并验证格式一致性
doc.save("20260614_自动化报告_正式版.docx")
这一步执行后,文件将直接生成在当前目录,无需打开Word即可确认:标题层级未塌陷、表格边框完整、中文字符无乱码、页边距保持2.5厘米——因为python-docx操作的是.docx底层XML结构,不依赖Office进程,格式锁定更可靠。

















