( --原创,转载请声明-- )
# 把最近用python写的一个邮件分区域检索和查询的实现贴出来
# 课余时间不多,没来得及考虑效率问题,思路较简单。so,有更高效的方法请不吝赐教~
# 轻拍~
一、构建索引目录
邮件数据集:1.3G,约50万个邮件文本。
目录树层次关系如下:
一级目录:有146个文件夹,对应146个人
二级目录:每个人的文件夹下有多个子文件夹,对应不同类型的邮件分类
三级目录:对应每个分类下的邮件文件
导入os模块,采用3个列表类型数据,对每一层文件进行遍历,分别存储在对应的列表中,把最后一级列表中的数据写到文件“out.txt”里。
for i in os.listdir('/tmp/Lupy-0.2.1/IR-test/mail'):
filelevel_1.append('/tmp/Lupy-0.2.1/IR-test/mail/'+i)
for j in filelevel_1:
for j1 in os.listdir(j):
# Don't want docs in 'all_documents'
if(j1!='all_documents'):
filelevel_2.append(j+'/'+j1)
for p in filelevel_2:
for p1 in os.listdir(p):
files.append(p+'/'+p1+'\r\n')
在服务器上跑,速度还可以...
方法比较土,自行鄙视一次...
最后,造出了一个好大的txt文件:
Done!
python里应该有可以遍历当前文件夹所有深度子目录文本的模块或方法,初学python,没有调研,知道的可以告知一下~