您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 |

自学教程:Python批量实现word中查找关键字的示例代码

51自学网 2023-07-22 10:36:04
  python
这篇教程Python批量实现word中查找关键字的示例代码写得很实用,希望能帮到您。

 一、背景

在日常办公和文档处理中,我们常常需要在大量的Word文档中查找特定的关键字,然后进行接下来的操作,比如关键字替换等。手动逐个打开并搜索文档显然是费时费力的。因此,利用Python编写一个批量实现Word中查找关键字的程序可以大大提高效率和减少工作负担。

二、开发环境

  • Python编程语言:Python是一种简洁、易读易写的高级编程语言,具有强大的数据处理和文本处理能力。本地使用Python3.6版本。
  • Python-docx库:Python-docx是一个用于操作Microsoft Word文档(.docx文件)的第三方库,可以读取和修改Word文档内容。
  • 文本编辑器或集成开发环境(IDE):选择一个适合你的编程习惯和需求的编辑器或IDE,例如Visual Studio Code、PyCharm等。本地使用PyCharm2022。

在搭建好开发环境后,我们将使用Python编写程序来实现以下步骤:

  • 安装所需库:通过命令行或Anaconda Prompt安装Python-docx库。
  • 导入必要的库:在Python代码中引入所需的库,例如import docx。
  • 获取Word文档列表:使用Python的文件操作函数遍历指定文件夹中的所有Word文档,将它们的路径存储在一个列表中。
  • 打开并读取Word文档:循环遍历Word文档列表,逐个打开文档并读取其内容。
  • 查找关键字:使用Python字符串操作函数在读取的文档内容中查找指定的关键字。
  • 输出结果或执行其他的操作:如果关键字在word中,则将文件移出到新建的文件夹中。

三、实现代码

#!/usr/bin/python# -*- coding: UTF-8 -*-"""@author:Awen@file:task_test.py@time:2023/07/04@function:Python实现在word中批量查找关键字,如果关键字在word中,则将文件移出到新建的文件夹中"""import osimport shutilfrom docx import Documentfrom docx.opc.exceptions import PackageNotFoundErrordef search_keyword_in_word(keyword, file_path):    # 若报错,则跳过,有的文件无法读取成功    try:        document = Document(file_path)        found_paragraphs = []        for paragraph in document.paragraphs:            if keyword in paragraph.text:                found_paragraphs.append(paragraph.text)        return found_paragraphs    except PackageNotFoundError:        print(f"文件 '{file_path}' 未找到。")        pass# 原文件夹路径source_file_path = 'D:/Pycharmproject2023/code_test_project/shan_test/正样本终版//'#  搜索的关键字keyword = '求职意向'for filename in os.listdir(source_file_path):    try:        # 创建新文件夹,用于找到相应文件之后将其移入到该文件夹中        new_directory = os.path.join(source_file_path, "data123")        os.makedirs(new_directory, exist_ok=True)        if filename.endswith('.docx'):            print(filename)            result = search_keyword_in_word(keyword, source_file_path+filename)            for paragraph in result:                print(paragraph)                # 如果求职意向中包含java字样,则是任务目标文件                if "java" in paragraph.lower():                    new_file_path = os.path.join(new_directory, filename)                    shutil.move(source_file_path+filename, new_file_path)                    print(f"已移动文件: {filename}")                    # # 删除原文件夹中的文件                    # os.remove(source_file_path+filename)                    # print(f"已删除文件: {filename}")    except Exception as e:        print(f"处理文件 '{filename}' 时出现错误: {str(e)}")        pass

到此这篇关于Python批量实现word中查找关键字的示例代码的文章就介绍到这了,更多相关Python word查找关键字内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


一文带你了解Python中的注释及变量
pyecharts中from pyecharts import options as opts报错问题以及解决
51自学网自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1