Project Detail
体系文件自动合成工具(独立开发)
工程效率工具|独立开发
Python自动化文档合成效率提升9x独立开发

项目背景
应用层单元软件开发体系文件在编制过程中,需要开发人员手动合并各单元设计说明书并进行格式处理。由于文件内容多、软件经常卡顿,耗费了大量时间。为优化这一流程,开发了自动化合并脚本工具。
工具整体设计
- 开发了"Combination_unit"单元设计说明书合并工具,用于批量处理 Word 文档,将多个原始单元文档预处理后合并到一个汇总模板中
- 工具分两步执行:第一步是单元文档预处理,第二步是文档合并,以降低内存占用和软件崩溃概率
预处理环节
- 支持选择办公软件(Microsoft Office 或 WPS)、原始单元文档文件夹、预处理输出文件夹等
- 自动识别单元设计说明书中的"单元概况"小节,兼容"单元概述""单元简介""单元介绍"等命名变体
- 根据文件名提取项目名称作为一级标题,并对文档标题进行降级处理
- 支持多种处理顺序(按文件名升序/降序或手动顺序)
合并环节
- 选择汇总模板文件(体系文件模板),并删除模板中目录页后的原有标题
- 将预处理后的文档按指定顺序合并,并统一设置多级编号
- 提供合并报告和输出文件夹快速查看功能
通用设置与性能优化
- 包含日志控制、批量处理数量设置等,确保程序运行稳定
- 支持强制关闭办公软件进程、保存临时文件(调试用)等选项
- 采用面向对象设计:DocumentMergerGUI、ManualOrderDialog、UnitDocumentPreprocessor、TemplateMerger 等类
- 使用 tkinter 构建界面,通过 win32com.client 操作 Word/WPS,利用线程和 COM 初始化/释放机制防止界面卡死和崩溃
异常处理与报告
- 预处理和合并过程中,每个失败文档均记录原因,生成报告便于排查问题
- 脚本设置了各级标题的字体、字号、加粗等样式,并支持在合并后手动调整编号起始值或样式
- 用户可自定义处理顺序、导出顺序文件、查看报告,并可在合并前修改模板信息,合并后按点检表核查文件,最终导出 PDF 会签