我从Edgar下载了一堆10-K文件。我只需要保留关键字为"加密货币"和"区块链"的10-K报告。每家公司都有一个单独的文件夹。然而,我却卡在了从多个文件夹读取txt文件上。下面是我的代码:
步骤1(这部分工作良好,并生成正确的目录)
import os
import pandas as pd
path = 'C:/test/2014/QTR1/'
words = ['cryptocurrency', 'blockchain']
filelist = os.listdir(path)
Path2 = []
for x in filelist:
Path2.append(path + x+ '/')
print(Path2)
第二步:
for i in Path2:
filelist2 = os.listdir(i)
for j in filelist2:
if j.endswith('.txt'):
each_file_content = open(j, 'r', encoding="utf-8").read()
if not any(word in each_file_content for word in words):
os.unlink(j)
运行后,Jupyter注意到我下面的错误:
FileNotFoundError Traceback(最近调用最后)输入[43],在〈细胞系:1〉()3表示文件列表2中的j:4如果j.以('. txt ')结尾:- ---〉6每个文件内容=打开(j,'r',编码="utf-8"). read()7如果没有(每个文件内容中的单词用于单词中的单词):8 os.断开(j)
未找到文件错误:[Errno 2]没有这样的文件或目录:'0001000180 - 14 - 000019文本文件'
有没有人可以帮我修改一下上面的代码或者有没有其他的想法来完成我提到的任务?
我希望删除不包含这两个关键字的文件,任何建议都会很有帮助!
1条答案
按热度按时间z9smfwbn1#
使用pathlib(rglob递归搜索):