Python全文内容检索方法

  最近有位同学提出了这样一个业务需求:期望能够通过检索参与人员名称、会议讨论内容等能够从大量语料中找出相关的会议议题。本文提供一种检索文本内容的方式,程序设计思路如下:
(1)读取文件夹下所有文本信息;
(2)将文件名(会议议题)和文件内容(会议内容)按照字典格式存储;
(3)利用正则表达式检索文件内容(会议内容);
(4)若匹配成功,则输出文件名(会议议题);
数据配置要求:在D盘下创建test文件夹,将全部会议数据.txt放在test文件夹下

Python程序设计如下:

# ==== 读取原始语料txt文件 ====
import os
rootdir='d:\\test\\'
txt_list = []  # 定义一个列表用于存储所有文件内容

for root, dirs, files in os.walk(rootdir):  # 遍历指定目录
    for filename in files:  # 遍历目录下所有文件
            fullname = root + filename  # 拼接完整的文件名,parent是父目录
            one_file = open(fullname,'r', encoding='utf-8').read()
            # 存储K-value 文件名:文件内容
            one_txt = dict()  
            one_txt[filename] = one_file  
            txt_list.append(one_txt)

# ==== 正则表达式遍历检索 ====            
import re
pattern = re.compile("黄立鹏") #填写需要查找的人名或会议内容
result_content=''

for txt in txt_list: # 遍历txt文件
    for txt_key in txt.keys(): # txt_key标题,txt[txt_key]内容
        match = pattern.search(txt[txt_key])
        if match:
            result_content += os.path.join('会议议题:'+txt_key+'\n')    
print(result_content)

分类: 自然语言处理