发明内容
为了解决现有技术中邮件附件的管理问题,本发明提供一种邮件附件的搜索和管理方法及搜索和管理系统,能够对邮件附件进行有效的管理,提高检索效率、降低检索的时间成本。
本发明实施例提供一种邮件附件的搜索和管理方法,包括:获取邮件中的信息;根据所获取的邮件信息形成第一附件列表;对所述第一附件列表中包含的重复附件信息进行过滤,并生成第二附件列表;根据所述第二附件列表中的信息内容进行附件搜索。
上述实施例中,所述邮件附件的搜索和管理方法还包括:对所述第二附件列表中包含的附件信息进行下载和压缩。
上述实施例中,对所述第二附件列表中包含的附件信息进行下载和压缩后,存储下载和压缩后的附件信息以替换上次下载和压缩后存储的附件信息。
上述实施例中,对所述第一附件列表中包含的重复附件信息进行过滤时,将重复邮件附件只添加进第二附件列表一次,忽略再次出现的重复邮件附件,但记录重复文件名和路径信息到本地的重复记录文件当中。
上述实施例中,根据所述第二附件列表中的信息内容进行附件搜索时,对第二附件列表中的压缩包进行映射并生成映射列表,并对映射列表中的信息内容进行附件搜索。
本发明实施例还提供一种邮件附件的搜索和管理系统,包括:附件获取模块,用于获取邮件中的信息,并根据所获取的邮件信息形成第一附件列表;过滤模块,用于对所述第一附件列表中包含的重复附件信息进行过滤,并生成第二附件列表;检索模块,用于根据所述第二附件列表中的信息内容进行附件搜索。
上述实施例中,所述邮件附件的搜索和管理系统还包括:压缩模块,用于对所述第二附件列表中包含的附件信息进行下载和压缩。
上述实施例中,所述压缩模块还用于在每次对所述第二附件列表中包含的附件信息进行下载和压缩后,将压缩后的附件信息存储以替换压缩模块上次下载和压缩后存储的附件信息。
上述实施例中,所述邮件附件的搜索和管理系统还包括:展示模块,用于展示检索模块的检索结果列表并将检索结果列表存储到本地文件当中。
上述实施例中,所述邮件附件的搜索和管理系统还包括:映射模块,用于对第二附件列表中的压缩包进行映射并生成映射列表。
本发明的上述实施例的邮件附件的搜索和管理方法及系统将邮件中的重复附件进行过滤能够实现对邮件附件的有效管理,能够有效的提高检索效率、降低检索的时间成本。
具体实施方式
下面结合附图和具体实施方式对本发明的技术方案作进一步更详细的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是根据本发明实施例的一种邮件附件的搜索和管理方法的流程图,该种邮件附件的处理方法,包括:S1.获取邮件中的信息;S2.根据所获取的邮件信息形成第一附件列表;S3.对所述第一附件列表中包含的重复附件信息进行过滤,并生成第二附件列表;S4.根据所述第二附件列表中的信息内容进行附件搜索。
步骤S1中,所述获取邮件中的信息是指下载邮件,以获取发件人、邮件名称和邮件中的全部附件,生成附件列表文件。
步骤S2中,所述根据所获取的邮件信息形成第一附件列表是指,在步骤S1获取发件人、邮件名称和邮件中的全部附件时,将获取的发件人、邮件名称和邮件中的附件一一对应起来并添加到临时列表;获取发件人、邮件名称和邮件中的全部附件完毕后,根据获取到的临时列表更新本地的附件列表文件,生成第一附件列表。
步骤S3中,对所述第一附件列表中包含的重复附件信息进行过滤时,将重复邮件附件只添加进第二附件列表一次,忽略再次出现的重复邮件附件,但记录重复文件名和路径信息到本地的重复记录文件当中。
步骤S4中,根据关键字对第二附件列表中的信息内容进行附件搜索,并生成检索结果列表。
该种邮件附件的搜索和管理方法,将邮件中的重复附件进行过滤后再进行检索,能够实现对邮件附件的有效管理,无需对重复的邮件一一检索,从而能有效的提高检索效率、降低检索的时间成本。
参见图2,优选的,该种邮件附件的搜索和管理方法还包括步骤S3-1:对所述第二附件列表中包含的附件信息进行下载和压缩。更优选的,该种邮件附件的搜索和管理方法还包括步骤S3-2:存储下载和压缩后的附件信息以替换上次下载和压缩后存储的附件信息。
由于第二附件列表中包含的附件信息被下载和压缩,并替换上次存储的附件信息,方便保存、管理所有附件,并有效减少存储空间,降低存储成本。
优选的,步骤S4根据所述第二附件列表中的信息内容进行附件搜索时,对第二附件列表中的压缩包进行映射并生成映射列表,并对映射列表中的信息内容进行附件搜索。
如此设计,如果遇到压缩包文件,或者压缩包中再有压缩包的情况,也能正常进行搜索,无须在逐封邮件、逐个压缩包中进行寻找,大大减少了附件搜索所需要的时间。
图3是根据本发明实施例的一种邮件附件的搜索和管理系统的功能模块图,该邮件附件的搜索和管理系统包括:附件获取模块201,过滤模块202,以及检索模块203。
所述附件获取模块201用于获取邮件中的信息,并根据所获取的邮件信息形成第一附件列表。
本实施例中,所述附件获取模块201读取邮箱的配置文件,根据配置文件的信息登陆邮箱,下载邮件,获取发件人、邮件名称、附件路径、附件信息和邮件中的全部附件并生成附件列表文件。具体的,所述附件获取模块201在获取发件人、邮件名称和邮件中的全部附件时,将获取到的发件人、邮件名称和邮件中的附件一一对应起来并添加到第一附件列表;所述附件获取模块201在获取发件人、邮件名称和邮件中的全部附件完毕后,根据获取到的第一附件列表更新本地的附件列表文件。
所述过滤模块202用于对所述第一附件列表中包含的重复附件信息进行过滤,并生成第二附件列表。
本实施例中,所述过滤模块202读取附件列表文件,分析每个附件的特征以判断是否是同一文件,并产生重复的附件列表和第二附件列表。具体的,所述过滤模块202分析每个附件的大小和MD5值、以判断是否是同一文件,最后可以产生第二附件列表和重复的附件列表两张列表。其中第二附件列表可以发送到检索模块203以供检索,而重复的附件列表,储存在本地重复记录文件当中。
所述检索模块203用于根据所述第二附件列表中的信息内容进行附件搜索。
本实施例中,所述检索模块203用于获取第二附件列表以及用户输入的搜索关键字,并根据关键字对第二附件列表中的附件进行检索,继而根据检索到的附件生成检索结果列表。
优选的,该种邮件附件的搜索和管理系统还包括压缩模块204,用于对所述第二附件列表中包含的附件信息进行下载和压缩。更优选的,所述压缩模块204还用于在每次对所述第二附件列表中包含的附件信息进行下载和压缩后,将压缩后的附件信息存储以替换压缩模块上次下载和压缩后存储的附件信息。
优选的,该种邮件附件的搜索和管理系统还包括展示模块205,用于展示检索模块203的检索结果列表并将检索结果列表存储到本地文件当中。
所述展示模块205,用于获取检索模块203生成的检索结果列表,将该检索结果列表展示给用户并存储到本地指定的文件当中。具体的,展示模块205包括两方面的功能,一是将检索结果列表存储到本地指定的文件当中,另一方面是将检索结果列表展示给用户。更优选的,该展示模块205也可接收来自过滤模块的第二附件列表,未经检索情况下直接将第二附件列表展示给用户。
优选的,该种邮件附件的搜索和管理系统还包括映射模块206,用于对第二附件列表中的压缩包进行映射并生成映射列表。
本实施例中,所述映射模块206将生成的映射列表返回给检索模块203。具体的,需要进行压缩包文件的检索时,则需要对当前获取到的附件中的压缩包和压缩模块204产生的上一次附件压缩包进行映射动作。映射是指压缩包文件路径到路径树的映射,映射完成后,会生成路径树。再将路径树的每条路径,添加到临时列表当中。如果检索的压缩包中再含有压缩包,则调用自身模块功能进行二次映射,以此类推,直到所有压缩包文件映射完成。最后生成映射列表,返回给检索模块203。所述检索模块203获取映射列表,将映射列表添加到第二附件列表对应压缩包列表位置当中,并根据关键字对第二附件列表及映射列表中的附件进行检索,继而根据检索到的附件生成检索结果列表。
以下将举例进一步说明本发明实施例提供的邮件附件的搜索方法。
举例一:用户输入查询字段,先过滤重复附件,再检索压缩包中的文件,接着生成检索结果,最后将本次获取到的附件打包到压缩档当中。
1)公司员工小黑填写配置文件,填入自己的邮箱地址,用户名和密码,同时确认附件储存路径参数、附件列表参数、重复记录参数、检索结果参数和关键字参数。这里采用默认配置附件储存路径参数为D:\;附件列表参数为D:\list.xlsx;重复记录参数为D:\SameList.xlsx;检索结果参数为D:\Result.xlsx。并确定需要检索的关键字为“培训”,设置过滤重复附件,检索压缩包中的文件。
2)通过配置文件获取邮箱附件列表。获取完毕,系统获取到五封邮件及其附件。邮件A的发件人为小曼,邮件名称为高速球测试开始,邮件附件为测试说明.txt,邮件签名1.jpg;邮件B的发件人为小妮,邮件名称为烟火检测测试方案评审,邮件附件为烟火检测测试方案V1.0.doc,邮件签名2.jpg;邮件C的发件人为小曼,邮件名称为活动回顾,邮件附件为活动1.jpg,活动2.jpg,活动3.jpg,邮件签名3.jpg;邮件D的发件人为小曼,邮件名称为实验室检查友情提醒,邮件附件为实验室检查事项.ppt,邮件签名4.jpg;邮件E的发件人为小曼,邮件名称为关于开展培训活动的通知,附件为培训课程.rar,邮件签名5.jpg。最后将获取到的内容生成列表,传入过滤模块并储存到D:\list.xlsx文件当中。
列表内容如表1所示。
表1
其中小曼的签名都是相同的,只是名字不同。
3)根据传入的表1列表,过滤重复的邮件附件。每个附件都可以用过滤模块中的MD5验证算出一个固定的MD5码来。MD5码是根据公开的MD5算法对附件信息进行数学变换后得到的一个特征码。遍历列表中的文件,检测到列表中的所有文件的MD5值和大小值。当检测完所有附件,生成新的临时列表如表2所示。
表2
先比较表2中每一个附件的大小,大小一致后再比较MD5值。如果两者是一样的,则判断是同一文件。通过比较,得出重复附件列表,列表储存到本地D:\SameList.excel当中。如表3所示。
表3
最后从临时列表中删除重复附件列表中每一项重复附件第二条到最后一条记录,只保留第一条附件记录。最后生成新的临时列表如表4所示。
表4
4)将新的临时列表发送到检索模块。检索模块先检测列表中的附件信息,检测到含有rar的附件,其中培训课程.rar压缩包中含有培训日常安排.xlsx,建议收集.xlsx,培训课件.ppt三个文件。调用映射模块先对压缩包先进行映射。生成的映射树如图4所示。映射树生成以后,从树的左边开始,进行子节点路径的生成。从末级节点开始,获取到名称后,首先确认是不是rar文件后,然后一直往上,获取每级节点的名称,再逐一拼接起来,直到根节点。依次类推,直到每个子节点都遍历完。其中培训课程.rar有三个子节点,拼接出三条路径:培训课程\培训日常安排.xlsx,培训课程\建议收集.xlsx,培训课程\培训课件.ppt。拼接完成,将路径添加到临时列表表4当中,替换培训课程.rar所在的节点。生成映射列表如表5所示。
表5
5)将表5传回检索模块。系统根据传入的关键字“培训”,进行检索。生成检索结果列表如表6所示。
表6
6)将检索列表传入展示模块,展示模块将检索列表储存到D:\Result.xlsx当中并自动打开excel文件展示给公司员工小黑查看。
7)最后压缩模块读取D:\list.xlsx中的附件列表,同时获取当前系统时间,将附件打包到一个以当前系统时间命名的压缩档当中。
举例二:用户输入查询字段,直接检索压缩包中压缩包(“包中包”)的文件,最后生成检索结果。
1)公司员工小丹填写配置文件,填入自己的邮箱地址,用户名和密码,同时确认附件储存路径参数、附件列表参数、重复记录参数、检索结果参数和关键字参数。这里更改默认配置附件储存路径参数为E:\附件;附件列表参数为E:\附件\list.xlsx;重复记录参数为E:\附件\SameList.xlsx;检索结果参数为E:\附件\Result.xlsx。并确定需要检索的关键字为“跳水”。设置不过滤重复附件,直接检索压缩包中的文件。
2)通过配置文件获取邮箱附件列表。获取完毕,系统获取到三封邮件及其附件。邮件A的发件人为小芳,邮件名称为部门周报,邮件附件为周报.xlsx,邮件签名1.jpg;邮件B的发件人为小琳,邮件名称为绩效收集,邮件附件为各部门绩效.xlsx,邮件签名2.jpg;邮件C的发件人为小勇,邮件名称为活动收集,邮件附件为活动收集.rar,邮件签名3.jpg。最后将获取到的内容生成列表,传入检索模块并储存到E:\附件\list.xlsx文件当中。
列表内容如表7所示。
表7
3)检索模块检测。检索模块先检测列表中的附件信息,检测到含有1个rar的附件,其中活动收集.rar中含有活动介绍.jpg,活动精华.rar;活动精华.rar压缩包中含有跳水.jpg,跳舞.jpg,跳绳.jpg。调用映射模块对压缩包先进行映射。映射模块一次映射的结果如图5所示。映射树生成以后,从树的左边开始,进行子节点路径的生成。从末级节点开始,获取到名称后,首先确认是不是rar文件后,然后一直往上,获取每级节点的名称,再逐一拼接起来,直到根节点。依次类推,直到每个子节点都遍历完。其中活动收集.rar有两个子节点,拼接出两条路径:活动\活动介绍.jpg,活动\活动精华.rar。当检测到子节点为rar文件,则调用自身对压缩包文件进行二次映射,如图6所示,其中活动精华.rar有三个子节点,拼接处三条路径活动精华\跳水.jpg,活动精华\跳舞.jpg,活动精华\跳绳.jpg。二次拼接的路径替换到压缩包路径之下。最终的拼接路径为活动\活动介绍.jpg,活动\活动精华\跳水.jpg,活动\活动精华\跳舞.jpg,活动\活动精华\跳绳.jpg。拼接完成,将路径添加到临时列表当中,生成映射列表如表8所示。
表8
4)将表8传回检索模块。系统根据传入的关键字“跳水”,进行检索。生成检索结果列表如表9所示。
表9
5)将检索列表传入展示模块,展示模块将检索结果列表储存到E:\附件\Result.xlsx当中并自动打开excel文件展示给公司员工小丹查看。
本发明的实施具有以下有益效果:
本发明提供的邮件附件的搜索和管理方法及系统,对现有技术进行改进,将邮件中的重复附件进行过滤后再进行检索,能够实现对邮件附件的有效管理,无需对重复的邮件一一检索,从而能有效的提高检索效率、降低检索的时间成本。
进一步的,本发明提供的邮件附件的搜索和管理方法及系统,每获取一次邮箱的邮件,都将新增的附件信息下载和压缩,对之前下载和压缩后存储的附件信息进行替换,方便保存、管理所有附件,并有效减少存储空间,降低存储成本。
更进一步的,本发明提供的邮件附件的搜索和管理方法及系统,如果遇到压缩包文件,或者压缩包中再有压缩包的情况,也能正常进行搜索,无须在逐封邮件、逐个压缩包中进行寻找,大大减少了附件搜索所需要的时间。
更进一步的,用户可以根据需要进行各个模块功能的自由组合,直接显示过滤重复邮件后的列表,不检索压缩包文件,只检索压缩包文件,或者先过滤重复附件再检索,都能通过本发明进行实现,再进一步减少附件搜索所要用的时间。
以上所揭露的仅为本发明实施例中的较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。