Python 指定信息在批量文件中搜索

Python 指定信息在批量文件中搜索

有时候在几千个文件中,查找某个信息,还不知道这个信息在哪个文件中,这可太折磨了。
于是乎就写了以下代码,能够实现在指定目录下搜索所有文件查找出具有想要搜索信息的文件。

代码如下:

import os
import datetime


class search_mes():
    def __init__(self): 
        self.file_list = []
        self.s_mes = '***'  # 你要搜索的信息
        self.path = r'***'  # 你搜索的路径
    
    def getFileName(self):
        path_list=os.listdir(self.path)
        path_list.sort() 
        for filename in path_list:
            if filename.endswith('.txt'):  # 搜索以什么为结尾的文件
                self.file_list.append(filename)
        self.parse_mes()

    def parse_mes(self):
        currentpath = os.getcwd()
        os.chdir(self.path)  # 切换工作路径

        for i in range(len(self.file_list)):
            with open(self.file_list[i], 'r', encoding='utf-8') as f:
                mes = f.read()
            if self.s_mes in mes:
                print('\n' + self.file_list[i] + '\n')


def main():
    start_time = datetime.datetime.now()
    op.getFileName()
    end_time = datetime.datetime.now()
    print('总运行时长为:' , end_time - start_time) 


if __name__ == '__main__':
    op = search_mes()
    main()
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值