使用Python将Word中的关键字写入Excel中

在数据处理的过程中,许多时候我们需要从一个文件中提取特定信息并写入另一个文件。比如,从Word文档中提取出某些关键字,并将其保存到Excel表格中。Python作为一门功能强大的编程语言,提供了丰富的库以简化这一过程。本文将为大家介绍如何使用Python的python-docxpandas库,快速实现将Word文档中关键字提取到Excel的功能。

准备工作

首先,确保你已经安装了所需的库。可以通过以下命令安装:

pip install python-docx pandas openpyxl
  • 1.
  • python-docx: 用于读取Word文档。
  • pandas: 用于数据处理和Excel文件的写入。
  • openpyxl: 用于Excel文件的读取和写入。

实现步骤

1. 读取Word文档

我们首先需要从Word文档中读取内容。以下是一个简单的示例代码,用于打开Word文档并提取文本。

from docx import Document

def read_word_file(file_path):
    doc = Document(file_path)
    text = []
    for paragraph in doc.paragraphs:
        text.append(paragraph.text)
    return text

word_file = 'example.docx'  # 替换为你的Word文件路径
content = read_word_file(word_file)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
2. 提取关键字

接下来,从读取的内容中提取关键字。这里我们假设关键字是以特定格式包围的,比如用“关键字”这样的语法。

import re

def extract_keywords(text):
    keywords = []
    for line in text:
        found_keywords = re.findall(r'\*\*(.*?)\*\*', line)
        keywords.extend(found_keywords)
    return keywords

keywords = extract_keywords(content)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
3. 将关键字写入Excel

最后,我们将提取出的关键字写入Excel文件。下面是将关键字保存到Excel的代码。

import pandas as pd

def write_to_excel(keywords, output_file):
    df = pd.DataFrame(keywords, columns=["关键字"])
    df.to_excel(output_file, index=False)

output_excel = 'keywords.xlsx'  # 输出的Excel文件
write_to_excel(keywords, output_excel)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
4. 整体流程图

为了更好地理解上述步骤,我们可以用状态图表示整个流程。以下是流程图:

读取Word文档 提取关键字 写入Excel

示例运行

将上述所有代码合并,形成一个完整的Python脚本。你只需替换example.docx为你的Word文件路径,并运行该脚本,即可自动生成包含关键字的Excel文件。

from docx import Document
import re
import pandas as pd

# 读取Word文档
def read_word_file(file_path):
    doc = Document(file_path)
    text = []
    for paragraph in doc.paragraphs:
        text.append(paragraph.text)
    return text

# 提取关键字
def extract_keywords(text):
    keywords = []
    for line in text:
        found_keywords = re.findall(r'\*\*(.*?)\*\*', line)
        keywords.extend(found_keywords)
    return keywords

# 写入Excel
def write_to_excel(keywords, output_file):
    df = pd.DataFrame(keywords, columns=["关键字"])
    df.to_excel(output_file, index=False)

# 主程序
if __name__ == "__main__":
    word_file = 'example.docx'  # 修改为你的Word文件路径
    content = read_word_file(word_file)
    keywords = extract_keywords(content)
    output_excel = 'keywords.xlsx'
    write_to_excel(keywords, output_excel)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
5. 甘特图

然后,为了可视化这个项目的时间安排,我们用甘特图表示各个步骤的开始与结束时间。

项目进度 2023-10-01 2023-11-01 2023-12-01 2024-01-01 2024-02-01 2024-03-01 2024-04-01 2024-05-01 2024-06-01 2024-07-01 2024-08-01 读取Word文档 提取关键字 写入Excel 数据读取 数据处理 数据保存 项目进度

结论

通过本文的介绍,我们展示了如何利用Python读取Word文档、提取关键字并写入Excel。这个流程不仅能够提高我们的工作效率,还能帮助我们更好地管理和存储信息。如果你对数据处理、文档自动化等方面感兴趣,不妨尝试自己编写脚本,实现更多功能。希望对你有所帮助!