pip install python-docx openpyxl
发布时间:2025-06-24 19:36:30 作者:北方职教升学中心 阅读量:235
- 使用openpyxll使用openpy.Workbook()创建新的Excel工作簿,并获取活动工作表。
1.导入仓库:
import tkinter as tk from tkinter import filedialog from docx import Document import openpyxl。
每个表格的行,每个单元格,将其内容写入Excel。- - 创建主窗设置窗口标题和尺寸。
openpyxl:Excel文件的创建和操作。- - tkinter:创建图形用户界面(GUI)。
- 每个分割后的部分,检查是否为空,如果不是空将其写入Excel的单独单元格。
- 用Document类读取用户选择的Word文档。如果用户选择文件名,保存工作簿。- 使用filedialogo.asksaveasfilename方法允许用户选择保存的excel文件名和位置。pip install python-docx openpyxl。
7.保存Excel文件:
excel_file = filedialog.asksaveasfilename(defaultextension=".xlsx", filetypes=[("Excel files", "*.xlsx")]) if excel_file: workbook.save(excel_file)。本文将介绍如何使用Python编写一个简单的程序,将Word文档中的内容转换为Excel表格。
5. 处理段落内容:
- - tkinter:创建图形用户界面(GUI)。
- 每个分割后的部分,检查是否为空,如果不是空将其写入Excel的单独单元格。
- 用Document类读取用户选择的Word文档。如果用户选择文件名,保存工作簿。
- 使用filedialogo.asksaveasfilename方法允许用户选择保存的excel文件名和位置。
pip install python-docx openpyxl。
7.保存Excel文件:
excel_file = filedialog.asksaveasfilename(defaultextension=".xlsx", filetypes=[("Excel files", "*.xlsx")]) if excel_file: workbook.save(excel_file)。本文将介绍如何使用Python编写一个简单的程序,将Word文档中的内容转换为Excel表格。
5. 处理段落内容:
for paragraph in doc.paragraphs: if paragraph.text.strip(): # 只处理非空段落 parts = paragraph.text.split("#") for part in parts: if part.strip(): # 非空部分只处理 sheet.append([part.strip()]) # 将每个部分写入单独的单元格中 sheet.append([""]) # 加空行分隔段落。
2.选择Word文件:
word_file = filedialog.askopenfilename(filetypes=[("Word files", "*.docx")]) if not word_file: return。环境准备。代码分析。
使用tkinter库创建图形用户界面(GUI),Word文档使用python-docx库c;并使用openpyxl库将内容写入excel文件。
- filedialog:选择对话框打开文件。
- - Word文档中的表格,在表格前添加一个空行来分隔段落和表格。
一.实例。
四、
- 使用split(");#")该方法按“#”符号划分段落内容。
以下是完整的代码示例:
import tkinter as tkfrom tkinter import filedialogfrom docx import Documentimport openpyxldef convert_word_to_excel_full(): # 选择Word文件 word_file = filedialog.askopenfilename(filetypes=[("Word files", "*.docx")]) if not word_file: return # 创建Excel工作簿 workbook = openpyxl.Workbook() sheet = workbook.active # 读取Word文档 doc = Document(word_file) for paragraph in doc.paragraphs: if paragraph.text.strip(): # 只处理非空段落 # 检查段落是否包含#符号 parts = paragraph.text.split("#") # 处理#分割的内容 for part in parts: if part.strip(): # 非空部分只处理 sheet.append([part.strip()]) # 将每个部分写入单独的单元格中 # 加一个空行来分隔不同的段落 sheet.append([""]) # 加空行分隔段落 # 遍历文档中的表格 for table in doc.tables: # 在表格前添加一个分隔段落和表格的空行 sheet.append([""]) # 加空行分隔 for row in table.rows: row_data = [] for cell in row.cells: row_data.append(cell.text) sheet.append(row_data) # 将表格写入Excel # 保存Excel文件 excel_file = filedialog.asksaveasfilename(defaultextension=".xlsx", filetypes=[("Excel files", "*.xlsx")]) if excel_file: workbook.save(excel_file)# 创建主窗口root = tk.Tk()root.title("Word to Excel Converter")root.geometry("400x250") # 设置窗口大小# convert创建按钮_button_full = tk.Button(root, text="Word文档转换为Excel", command=convert_word_to_excel_full, width=30)convert_button_full.pack(pady=50) # 增加上下间距# 运行root的主循环.mainloop()。
4. 阅读Word文档:
doc = Document(word_file)。
6.处理表格内容:
for table in doc.tables: sheet.append([""]) # 加空行分隔 for row in table.rows: row_data = [] for cell in row.cells: row_data.append(cell.text) sheet.append(row_data) # 将表格行写入Excel。
三、
3.创建Excel工作簿:
workbook = openpyxl.Workbook() sheet = workbook.active。如果用户不选择文件该程序将返回,不继续执行。实现代码。
四、选择打开第一个弹窗:
第二个弹窗选择保存路径和excel表格的名称:
生成后的效果如下:
二、
以下word文档为例:
工具界面如下:
选择相应的文档后,
- - Word文档中的每一段,检查段落是否为空。
- 创建一个按钮用户可以点击按钮开始转换。
- Document:python-docx库,用于读取Word文档。
- 使用filedialogo.askopenfilename方法允许用户选择要转换的Word文件。代码分析。
8.创建GUI:
root = tk.Tk() root.title("Word to Excel Converter") root.geometry("400x250") # 设置窗口大小 convert_button_full = tk.Button(root, text="Word文档转换为Excel", command=convert_word_to_excel_full, width=30) convert_button_full.pack(pady=50) # 增加上下间距 root.mainloop()。
日常工作,我们经常需要提取Word文档中的内容并将其转换为Excel表格,进行数据分析和处理。
每个段落处理后,添加一个空间来分隔不同的段落,确保Excel中的内容结构与Word文档一致。
- - Word文档中的表格,在表格前添加一个空行来分隔段落和表格。