引言
运用python实现多word文档处理
一、基础介绍
处理逻辑:选择一个模板文件,在模板文件里面把要修改的值替换成{ {xxx}}占位符,在可视化界面选择.docx模板文件后自动生成excel表格并且把模板文件占位符提取到excel作为标题行,输入内容保存,选择保存文件夹即可完成对word文档的处理,在标题下输入多少行生成多少份,选择过程中可以选择多个文件进行处理,支持的格式为.docx。如要处理.doc格式文件可以对代码进行配置或者把.doc文件转换成.docx。
二、准备工作
配置python环境
导入openpyxl、docxtpl、docx包
三、导入代码
import os
import re
from tkinter import Tk, Label, Entry, Button, filedialog, messagebox
from docx import Document
from docxtpl import DocxTemplate
import openpyxl
import pandas as pd
import time
import glob
# 创建主窗口
def create_window():
root = Tk()
root.title("自动化文书 V1.0") # 设置窗口标题
root.geometry("1000x600") # 设置窗口大小
root.configure(bg="#F0F0F0") # 设置窗口背景颜色
# 选择Word模板文件相关组件
Label(root, text="选择Word模板文件:", bg="#F0F0F0").grid(row=0, column=0, padx=10, pady=10, sticky="w")
word_path_entry = Entry(root, width=50)
word_path_entry.grid(row=0, column=1, padx=10, pady=10)
Button(root, text="浏览...", command=lambda: choose_word_templates(word_path_entry), bg="#4CAF50", fg="white").grid(row=0, column=2, padx=10, pady=10)
# 选择Excel文件相关组件
Label(root, text="选择Excel文件:", bg="#F0F0F0").grid(row=1, column=0, padx=10, pady=10, sticky="w")
excel_path_entry = Entry(root, width=50)
excel_path_entry.grid(row=1, column=1, padx=10, pady=10)