一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于RPA的IMAP协议邮件处理方法、装置及设备与流程

2022-09-07 15:34:05 来源:中国专利 TAG:

基于rpa的imap协议邮件处理方法、装置及设备
技术领域
1.本技术涉及计算机信息处理和无线通讯技术领域,更具体的说,是涉及一种基于rpa的imap协议邮件处理方法、装置及设备。


背景技术:

2.随着电子终端的发展和多样化,当今的用户需要从电脑,移动终端,手机,带触摸屏的平板电脑或者任何能够与互联网通信的其它装置来访问他的电子邮件的邮箱(或“电子信函”)。这些远程客户端具有多种功能,例如计算,存储和显示。同事,客户端之间使用多种不同的通信协议进行通信。
3.然而,通过各家服务商提供的协议接口进行获取和操作邮件时,大多数参数接口会发生报错。例如:a服务商可以通过邮件主题筛选并获取邮件,b服务商通过邮件主题筛选并获取邮件,会发生错误。因此,当需要获取、操作多家邮件服务商时,会发生接口报错等情况,导致处理邮件的效率低下。


技术实现要素:

4.鉴于上述问题,提出了本技术以便提供一种基于rpa的imap协议邮件处理方法、装置及设备。具体方案如下:
5.一种基于rpa的imap协议邮件处理方法,包括:
6.使用imap协议接收多个邮件;
7.读取每个所述邮件的文本内容信息;
8.将所有所述邮件的文本内容信息存储至redis缓存库中;
9.将所述redis缓存库中的邮件的文本内容信息缓存至本地,得到本地缓存;
10.对所述本地缓存进行解析,并将解析结果展示给用户。
11.优选地,所述读取每个所述邮件的文本内容信息,包括:
12.读取每个所述邮件的序列号和数据项,其中,所述数据项名称包括邮件标志、邮件正文类型、字符集和编码方式;
13.将获取的所述序列号和所述数据项作为读取的每个所述邮件的文本内容信息。
14.优选地,所述对所述本地缓存进行解析,并将解析结果展示给用户,包括:
15.使用imaplib标准库将所述本地缓存解析为邮件对象;
16.获取所述邮件对象中的多个字段信息;
17.对所述多个字段信息进行解码和时间转换,得到用户数据;
18.将所述用户数据展示给用户。
19.优选地,所述对所述本地缓存进行解析,并将解析结果展示给用户之前,还包括:
20.使用接口获取每个所述邮件的邮箱地址;
21.根据每个所述邮件的邮箱地址,将所有所述邮件连接至前端出口。
22.一种基于rpa的imap协议邮件处理装置,包括:
23.邮件接收单元,用于使用imap协议接收多个邮件;
24.邮件读取单元,用于读取每个所述邮件的文本内容信息;
25.邮件存储单元,用于将所有所述邮件的文本内容信息缓存至redis缓存库中;
26.邮件缓存单元,用于将所述redis缓存库中的邮件的文本内容信息存储至本地,得到本地缓存;
27.邮件显示单元,用于对所述本地缓存进行解析,并将解析结果展示给用户。
28.一种基于rpa的imap协议邮件处理设备,其特征在于,包括:存储器和处理器;
29.所述存储器,用于存储程序;
30.所述处理器,用于执行所述程序,实现如上所述的基于rpa的imap协议邮件处理方法的各个步骤。
31.一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的基于rpa的imap协议邮件处理方法的各个步骤。
32.借由上述技术方案,本技术的一种基于rpa的imap协议邮件处理方法,在使用imap协议接收多个邮件后,将所有邮件通过中间件缓存至本地,再使用接收库对本地缓存进行解析,得到用户数据,在获取和操作邮件时,使用redis缓存库先将邮件进行缓存,再存储至本地,减轻服务器处理数据的负担,redis缓存库具有存储数据时效长、数据备份及查询速度较快的特性,能够满足邮箱服务器在大量并发处理来自不同服务商的邮件时的需要,解决接口因无法及时处理数据而发生报错的问题,提升邮件处理效率;进一步地,在对本地缓存进行解析后,将解析结果展示给用户,用户能够直观明了地看到解析后的邮件信息,能够提升客户处理邮件的效率。
附图说明
33.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
34.图1为本技术实施例提供的基于rpa的imap协议邮件处理方法的流程示意图;
35.图2为本技术实施例提供的对本地缓存进行解析的过程示意图;
36.图3为本技术实施例提供的基于rpa的imap协议邮件处理装置结构示意图;
37.图4为本技术实施例提供的基于rpa的imap协议邮件处理设备的结构示意图。
具体实施方式
38.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
39.通过各家服务商提供接口进行获取和操作邮件时,大多数参数接口会发生报错。例如:a服务商可以通过邮件主题筛选并获取邮件,b服务商通过邮件主题筛选并获取邮件,会发生错误。因此,当需要获取、操作多家邮件服务商时,会发生接口报错等情况,导致处理邮件的效率低下。
40.故为了解决上述问题,本技术提供了一种基于rpa的imap协议邮件处理方法、装置及设备,使用redis缓存库先将邮件进行缓存,再存储至本地,减轻服务器处理数据的负担,redis缓存库具有存储数据时效长、数据备份及查询速度较快的特性,能够满足邮箱服务器在大量并发处理来自不同服务商的邮件时的需要,解决接口因无法及时处理数据而发生报错的问题,提升邮件处理效率。
41.接下来对本技术的基于rpa的imap协议邮件处理方法进行详细的介绍,请参考图1,图1为本技术实施例中提供的基于rpa的imap协议邮件处理方法的流程示意图,该方法包括:
42.步骤s110、使用imap协议接收多个邮件。
43.具体地,在本实施例中,在邮件服务商和邮箱服务器之间使用imap协议进行通信,接收的是多个使用impa协议的邮件。imap(internet message access protocol),即交互邮件访问协议,是一个应用层协议。用于在邮件服务器上获取邮件信息、下载邮件等。国内大部分邮件服务商,都提供imap邮件协议进行获取邮件信息和下载邮件等功能。通过邮件服务商提供的imap接口,填入不同的参数,可以进行相应的邮件操作。本实施例中,针对国内不同的邮件服务商,使用imap协议接口,根据输入的邮箱地址自动判断邮件服务商,然后对邮件进行接收。
44.进一步地,接收邮件通常使用两种常用协议,即pop3协议和本技术实施例中的imap协议。本技术实施例仅是采用使用imap协议的邮件以进行举例说明,不代表具体对某种协议的限定。
45.步骤s120、读取每个所述邮件的文本内容信息。
46.具体地,通过imap邮件协议的接口对邮件进行操作和查询前,我们通过fetch命令,读取每个所述邮件的文本内容信息。fetch命令用于读取邮件的文本信息,且仅用于显示的目的。fetch命令包含两个参数,即邮件号列表参数和数据名参数。邮件号列表参数(messageset)表示希望读取的邮件号列表,imap服务器邮箱中的每个邮件都有一个唯一的id标识。邮件号列表参数可以是一个邮件号,也可以是由逗号分隔的多个邮件号,或者由冒号间隔的一个范围。数据名参数是imap服务器返回邮件号列表中全部邮件的指定数据项内容,在imap服务器返回邮件时,由数据名参数能够确定被独立返回的是哪一部分的邮件。
47.步骤s130、将所有所述邮件的文本内容信息存储至redis缓存库中。
48.具体地,redis缓存库内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。具体到本实施例中,redis缓存库用作不同邮件服务商和邮箱服务器之间的中间件,提供缓存功能。它是基于高性能的key-value规则,并提供多种语言的api的非关系型数据库。不过与传统数据库不同的是redis的数据是储存在内存中的,所以存写速度非常快。
49.步骤s140、将所述redis缓存库中的邮件的文本内容信息缓存至本地,得到本地缓存。
50.具体地,使用redis缓存库可以有效的降低用户访问物理设备的频次,有效的减少并发的压力。保护后端真实的服务器,也即邮箱服务器。
51.可以理解地,假如某邮件服务商第一次访问邮箱服务器中的某些数据,由于是直接从硬盘上进行数据读取,这个过程会比较慢。但如果将访问数据存储在redis缓存库中,在这个邮件服务商再次访问的时候,邮箱服务器直接从缓存中获取邮件服务商的访问数
据,由于操作缓存是直接操作内存,所以速度会相当快,能够显著提升访问和处理效率。
52.进一步地,直接操作缓存能够承受的请求量是远远大于直接访问数据库的,在邮箱服务器大量并发处理来自不同服务商的邮件时,一部分请求会直接到redis缓存库,而不是直接到邮箱服务器中,这样能够减轻邮箱服务器的处理压力,使邮箱服务器能够面对高并发处理压力。
53.步骤s150、对所述本地缓存进行解析,并将解析结果展示给用户。
54.具体地,使用imap协议的邮件是被加密处理为特定规则下的字符的,在对接收的使用imap协议的邮件进行本地缓存之后,对本地缓存进行解析,可以得到用户可读的邮件版本,并可以将用户可读的邮件版本作为解析结果展示给用户。
55.进一步地,上述步骤是通过使用rpa技术以实现的。rpa,即流程自动化机器人(robotic process automation),是通过执行重复的基于规则的任务将手工活动进行自动化的一种产品解决方案,具有高效率、错误率低、减少人工量等优点。具体到本实施例中,能够通过使用rpa技术收取邮件,使用封装好的imap前端卡片,通过循环获取,判断是否收到邮件或是否收到目标邮件,从而对邮件及时回复,无需人为24小时等待,从而显著减少人力成本。在一些实施例中,还可以使用rpa技术连接到imap协议接口,并将读取、缓存、存储至本地和解析操作模块化至rpa中,从而实现流程上的自动化。
56.从上述的技术方案可以看出,本技术的一种基于rpa的imap协议邮件处理方法,在使用imap协议接收多个邮件后,将所有邮件通过中间件缓存至本地,再使用接收库对本地缓存进行解析,得到用户数据,在获取和操作邮件时,使用redis缓存库先将邮件进行缓存,再存储至本地,减轻服务器处理数据的负担,redis缓存库具有存储数据时效长、数据备份及查询速度较快的特性,能够满足邮箱服务器在大量并发处理来自不同服务商的邮件时的需要,解决接口因无法及时处理数据而发生报错的问题,提升邮件处理效率;进一步地,在对本地缓存进行解析后,将解析结果展示给用户,用户能够直观明了地看到解析后的邮件信息,能够提升客户处理邮件的效率。
57.上述的实施例中,对本技术的基于rpa的imap协议邮件处理方法做了基本介绍。本技术的一些实施例中,对上述步骤s120,读取每个所述邮件的文本内容信息的过程进行详细介绍,该过程可以包括如下步骤:
58.步骤s210、读取每个所述邮件的序列号和数据项,其中,所述数据项名称包括邮件标志、邮件正文类型、字符集和编码方式。
59.具体地,邮件标志可以是邮件图标,邮件正文类型可以包括文字(word)和表格(excel)等,字符集可以是在imap协议中不同文本的表达方式,编码方式可以决定邮件格式的转换方式。
60.进一步地,上述的数据项名称还可以包括多种数据类型。通过fetch命令对每个邮件的文本内容信息进行获取时,返回的邮件信息如下:
61.all:只返回按照一定格式的邮件摘要,包括邮件标志、rfc822.size、自身的时间和信封信息。imap客户机能够将标准邮件解析成这些信息并显示出来。
62.body:只返回邮件体文本格式和大小的摘要信息。imap客户机可以识别这些细腻,并向用户显示详细的关于邮件的信息。其实是一些非扩展的bodystructure的信息。
63.fast:只返回邮件的一些摘要,包括邮件标志、rfc822.size、和自身的时间。
64.full:只返回邮件的一些摘要,包括邮件标志、rfc822.size、自身的时间和bodystructure的信息。
65.bodystructur:是邮件的[mime-imb]的体结构。这是服务器通过解析[rfc-2822]头中的[mime-imb]各字段和[mime-imb]头信息得出来的。包括的内容有:邮件正文的类型、字符集、编码方式等和各附件的类型、字符集、编码方式、文件名称等等。
[0066]
envelope:信息的信封结构。是服务器通过解析[rfc-2822]头中的[mime-imb]各字段得出来的,默认各字段都是需要的。主要包括:自身的时间、附件数、收件人、发件人等。
[0067]
flags:此邮件的标志。
[0068]
internaldate:自身的时间。
[0069]
步骤s220、将获取的所述序列号和所述数据项作为读取的每个所述邮件的文本内容信息。
[0070]
具体地,读取出每个邮件的序列号和数据项后,就能够得到每个邮件的文本内容信息。
[0071]
上述的实施例中,对本技术的一种基于rpa的imap协议邮件处理方法做了基本介绍。本技术的一些实施例中,对上述步骤s150,对所述本地缓存进行解析,并将解析结果展示给用户,参考图2,该过程可以包括如下步骤:
[0072]
步骤s310、使用imaplib标准库将所述本地缓存解析为邮件对象。
[0073]
具体地,imaplib标准库是基于python的邮件查收功能模块,其中包含有将使用imap协议的邮件解析成为用户可读形式的解析方法。使用imaplib标准库对所述本地缓存进行解析的步骤包括:连接邮箱服务器、获取邮箱目录、获取最新的一封邮件、使用imaplib标准库中存储的解析方法对邮件进行解析等。
[0074]
进一步地,接收邮件通常使用两种常用协议,即pop3协议和本技术实施例中的imap协议,若是需要使用pop3协议对邮件进行处理,则在此步骤中使用poplib标准库将本地缓存解析为邮件对象,本技术实施例仅是采用使用imap协议的邮件以进行举例说明,不代表具体的限定。
[0075]
步骤s320、获取所述邮件对象中的多个字段信息。
[0076]
具体地,获取的邮件对象可以是内容为加密字符的一封邮件,这时需要将这封邮件中的内容进行区分,如区分邮件的主题和正文等,获取邮件中不同范围内的字段信息之后,再进行后续操作。
[0077]
可以理解地,不同邮件服务商的邮件格式不同,故相应地,邮件中同一范围所对应的字段信息也就不一定代表相同的意思,例如在a邮件服务商的邮件中,a范围内的字段信息表示正文,在b邮件服务商的邮件中,相同的a范围内的字段信息可能表示主题和正文。本实施例中可以通过预先设置不同的处理方式来处理来自不同邮件服务商的邮件。
[0078]
步骤s330、对所述多个字段信息进行解码和时间转换,得到用户数据。
[0079]
具体地,在上述步骤获取的多个字段信息中,有一部分是用户需要的数据,比方说主题、收件人等。但是数据是以字典等格式展现,会获取到非常多的无用字段,这些无用字段包括在邮件处理过程中产生的大量的废弃字段和用户不可读的字段。故本步骤中通过对多个字段信息进行解码和时间转换,也即调用预设函数对imap协议下的字段信息进行解密,再对解密后的字段信息进行筛选和提炼,之后得到用户数据。
memory)等,例如至少一个磁盘存储器;
[0101]
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
[0102]
使用imap协议接收多个邮件;
[0103]
读取每个所述邮件的文本内容信息;
[0104]
将所有所述邮件的文本内容信息存储至redis缓存库中;
[0105]
将所述redis缓存库中的邮件的文本内容信息缓存至本地,得到本地缓存;
[0106]
对所述本地缓存进行解析,并将解析结果展示给用户。
[0107]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0108]
本技术实施例还提供一种存储介质,该存储介质可存储有适于处理器执行的程序,所述程序用于:
[0109]
使用imap协议接收多个邮件;
[0110]
读取每个所述邮件的文本内容信息;
[0111]
将所有所述邮件的文本内容信息存储至redis缓存库中;
[0112]
将所述redis缓存库中的邮件的文本内容信息缓存至本地,得到本地缓存;
[0113]
对所述本地缓存进行解析,并将解析结果展示给用户。
[0114]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0115]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0116]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间可以根据需要进行组合,且相同相似部分互相参见即可。
[0117]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献