数据处理方法、装置及电子设备与流程

文档序号:16533457发布日期:2019-01-05 10:58阅读:141来源:国知局
数据处理方法、装置及电子设备与流程

本发明涉及计算机数据处理技术领域,具体而言,涉及一种数据处理方法、装置及电子设备。



背景技术:

随着大数据的发展,当用户需要获取大量地针对指定内容对应的数据信息时,通常需要利用爬虫来获取相应的数据。例如,扫描器的爬虫先获取目标站点存在的统一资源定位符(uniformresourcelocator,url)下载其内容资源等相关数据,再将url及对应的相关数据传递给扫描器的处理模块进行相应的分析处理。在现有技术中,爬虫传递给后台处理模块的数据(如,url)很大一部分存在相似性,便会形成资源的冗余检测。



技术实现要素:

为了克服上述现有技术中的不足,本发明提供一种数据处理方法、装置及电子设备。

为了实现上述目的,本发明实施例所提供的技术方案如下所示:

第一方面,本发明实施例提供一种数据处理方法,应用于电子设备,所述电子设备包括缓存模块,所述方法包括:

获得待识别数据及与所述待识别数据对应的内容资源,所述待识别数据包括uri、网页资源中的至少一种;

根据预设解析规则集中的解析规则对所述待识别数据进行解析,得到与所述待识别数据及与所述待识别数据等同的数据相对应的综合标识,其中,所述综合标识包括与所述解析规则的种类相对应的标识;

将所述综合标识作为关键字,判断所述缓存模块中是否存在与所述关键字对应的第一结果数据;

当所述缓存模块中存在与所述关键字对应的所述第一结果数据时,将所述第一结果数据存入到预先指定的可读存储介质中。

可选地,上述判断所述缓存模块中是否存在与所述关键字对应的第一结果数据之后,所述方法还包括:

当所述缓存模块中不存在与所述关键字对应的第一结果数据时,确定与所述待识别数据对应的第二结果数据,并将所述第二结果数据以所述综合标识为新的关键字存入所述缓存模块,并将所述第二结果数据存入所述可读存储介质中。

可选地,上述根据预设解析规则集中的解析规则对所述待识别数据进行解析,得到与所述待识别数据及与所述待识别数据等同的数据相对应的综合标识,包括:

通过预设函数对所述uri进行解析,得到所述uri中的域名部分;

根据所述预设函数的内容与所述域名部分确定所述综合标识。

可选地,上述将所述第一结果数据存入到预先指定的可读存储介质中之后,所述方法还包括:

获取新的uri和/或网页资源以作为新的待识别数据以进行识别处理。

第二方面,本发明实施例提供另一种数据处理方法,应用于电子设备,所述电子设备包括缓存模块,所述方法包括:

获得待识别数据及与所述待识别数据对应的内容资源,所述待识别数据包括uri、网页资源中的至少一种;

根据预设解析规则集中的解析规则对所述待识别数据进行解析,得到与所述待识别数据及与所述待识别数据等同的数据相对应的综合标识,其中,所述综合标识包括与所述解析规则的种类相对应的标识;

将所述综合标识作为关键字,判断所述缓存模块中是否存在与所述关键字对应的第一结果数据;

当所述缓存模块中不存在与所述关键字对应的第一结果数据时,确定与所述待识别数据对应的第二结果数据,并将所述第二结果数据以所述综合标识为新的关键字存入所述缓存模块,并将所述第二结果数据存入到预先指定的可读存储介质中。

第三方面,本发明实施例提供一种数据处理装置,应用于电子设备,所述电子设备包括缓存模块,所述装置包括:

获得单元,用于获得待识别数据及与所述待识别数据对应的内容资源,所述待识别数据包括uri、网页资源中的至少一种;

解析单元,用于根据预设解析规则集中的解析规则对所述待识别数据进行解析,得到与所述待识别数据及与所述待识别数据等同的数据相对应的综合标识,其中,所述综合标识包括与所述解析规则的种类相对应的标识;

判断单元,用于将所述综合标识作为关键字,判断所述缓存模块中是否存在与所述关键字对应的第一结果数据;

录入单元,用于当所述缓存模块中存在与所述关键字对应的所述第一结果数据时,将所述第一结果数据存入到预先指定的可读存储介质中。

可选地,在所述判断单元判断所述缓存模块中是否存在与所述关键字对应的第一结果数据之后,所述录入单元还用于:

当所述缓存模块中不存在与所述关键字对应的第一结果数据时,确定与所述待识别数据对应的第二结果数据,并将所述第二结果数据以所述综合标识为新的关键字存入所述缓存模块,并将所述第二结果数据存入所述可读存储介质中。

可选地,上述解析单元还用于:

通过预设函数对所述uri进行解析,得到所述uri中的域名部分;

根据所述预设函数的内容与所述域名部分确定所述综合标识。

第四方面,本发明实施例提供一种电子设备,所述电子设备包括:

缓存模块;

存储单元;

处理单元;及

数据处理装置,包括一个或多个存储于所述存储单元中并由所述处理单元执行的软件功能模块,所述数据处理装置包括:

获得单元,用于获得待识别数据及与所述待识别数据对应的内容资源,所述待识别数据包括uri、网页资源中的至少一种;

解析单元,用于根据预设解析规则集中的解析规则对所述待识别数据进行解析,得到与所述待识别数据及与所述待识别数据等同的数据相对应的综合标识,其中,所述综合标识包括与所述解析规则的种类相对应的标识;

判断单元,用于将所述综合标识作为关键字,判断所述缓存模块中是否存在与所述关键字对应的第一结果数据;

录入单元,用于当所述缓存模块中存在与所述关键字对应的所述第一结果数据时,将所述第一结果数据存入到预先指定的可读存储介质中。

第五方面,本发明实施例提供一种计算机可读存储介质,所述可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述的数据处理方法。

相对于现有技术而言,本发明提供的数据处理方法、装置及电子设备至少具有以下有益效果:该方法通过预设解析规则集中的解析规则对待识别数据进行解析,得到与待识别数据及与待识别数据等同的数据相对应的综合标识,其待识别数据包括uri、网页资源中的至少一种,综合标识包括与解析规则的种类相对应的标识,然后,将综合标识作为关键字,判断缓存模块中是否存在与关键字对应的第一结果数据,若存在,则将第一结果数据存入到预先指定的可读存储介质中。基于此,可以避免重复从外界获取与待识别数据的资源相类似的资源,避免了资源的冗余检测,进而有助于提高设备的运行效率。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的电子设备与服务器的交互示意图。

图2为本发明实施例提供的电子设备的方框示意图。

图3为本发明实施例提供的数据处理方法的流程示意图。

图4为本发明实施例提供的数据处理装置的方框示意图。

图标:10-电子设备;11-处理单元;12-通信单元;13-存储单元;14-缓存模块;20-服务器;100-数据处理装置;110-获得单元;120-解析单元;130-判断单元;140-录入单元。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请结合参照图1和图2,其中,图1为本发明实施例提供的电子设备10与服务器20的交互示意图,图2为本发明实施例提供的电子设备10的方框示意图。在本实施例中,电子设备10可以通过网络与服务器20建立通信连接以进行数据交互,其中电子设备10可以通过统一资源标识符(uniformresourceidentifier,uri)从服务器20获取相应的资源数据。其资源数据包括,但不限于文字、图片、视频、音频、应用程序等,网络可以是,但不限于,有线网络或无线网络。其中,uri可以包括统一资源定位符(uniformresourcelocator,url)以及统一资源名称(uniformresourcename,urn)。

在本实施例中,电子设备10可以用于执行下述的数据处理方法,该电子设备10可以是,但不限于,智能手机、个人电脑(personalcomputer,pc)、平板电脑、个人数字助理(personaldigitalassistant,pda)、移动上网设备(mobileinternetdevice,mid)等。在本实施例中,

在本实施例中,电子设备10可以包括处理单元11、通信单元12、存储单元13、缓存模块14以及数据处理装置100,处理单元11、通信单元12、存储单元13、缓存模块14以及数据处理装置100各个元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,处理单元11可能是一种集成电路芯片,具有信号的处理能力。上述处理单元11可以是通用处理器。例如,该处理器可以是中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。

在本实施例中,通信单元12用于通过网络建立电子设备10与服务器20的通信连接,并通过网络收发数据。

在本实施例中,存储单元13可以是,但不限于,随机存取存储器,只读存储器,可编程只读存储器,可擦除可编程只读存储器,电可擦除可编程只读存储器等。在本实施例中,存储单元13可以用于存储综合标识、预设解析规则集、url对应的资源数据等。当然,存储单元13还可以用于存储程序,处理单元11在接收到执行指令后,执行该程序。

进一步地,数据处理装置100包括至少一个可以软件或固件(firmware)的形式存储于存储单元13中或固化在电子设备10操作系统(operatingsystem,os)中的软件功能模块。处理单元11用于执行存储单元13中存储的可执行模块,例如数据处理装置100所包括的软件功能模块及计算机程序等。

可以理解的是,图2所示的结构仅为电子设备10的一种结构示意图,电子设备10还可以包括比图2所示更多或更少的组件。图2中所示的各组件可以采用硬件、软件或其组合实现。

请参照图3,为本发明实施例提供的数据处理方法的流程示意图。本发明实施例提供的数据处理方法可以应用于上述的电子设备10,由电子设备10执行数据处理方法的各步骤,能够避免从外界(服务器20或其他设备)对相同或类似待识别数据进行冗余检测,从而提高电子设备10的运行效率。例如,可以对相同或类似的uri、网页资源进行去重检测。

下面将对图3中所示的各步骤进行详细阐述,在本实施例中,数据处理方法可以包括以下步骤:

步骤s210,获得待识别数据及与待识别数据对应的内容资源,待识别数据包括uri、网页资源中的至少一种。

在本实施例中,电子设备10可以从其他设备、服务器20或存储介质(如u盘)获取到待识别数据及与待识别数据对应的内容资源,其内容资源包括但不限于文本信息、图片、音频、视频等。例如,电子设备10可以通过爬虫获取一条或多条url作为待识别数据,其中,对于同时获得的多条待识别url,可以通过并行处理,以提高处理效率。

步骤s220,根据预设解析规则集中的解析规则对待识别数据进行解析,得到与待识别数据及与待识别数据等同的数据相对应的综合标识,其中,综合标识包括与解析规则的种类相对应的标识。

在本实施例中,综合标识可以用于对相同或相类似的待识别数据进行归类,以避免对相同或相类似的待识别数据重复检测。例如,缓存模块14预先缓存有相应的资源数据,对于相同或相类似的url,电子设备10可以直接从电子设备10的缓存模块14获取相应的资源数据,而无需从服务器20检测数据并下载数据。可理解地,缓存模块14预先存储有与待识别url相同或相类似的url对应的资源数据及综合标识,综合标识与资源数据相关联,以对各类资源数据进行区分。

在本实施例中,步骤s220可以包括:通过预设函数对uri进行解析,得到uri中的域名部分;根据预设函数的内容与域名部分确定综合标识。

例如,可以通过函数的方式对待识别数据进行解析。下面以对url进行解析作举例说明:

例如,对于预设函数f(x)=y,其中x为待识别数据(原始url),y为待识别数据映射得到的数据标识(url片段),映射的函数f便为一种解析规则;

具体地,在同一个缓存模块14中,可能存在多个解析规则(多个函数如f1、f2、f3等),使用这些解析规则解析相同或不同的url可能得到相同的url片段,这些结果url片段实际各自对应不同的解析规则;

进一步地,假设有预设解析规则集中包括两个解析规则,第一解析规则f1及第二解析规则f2;第一解析规则f1:用于解析出url中的域名部分,第二解析规则f2:用于解析出url的路径部分;

假设又有两个输入数据:

x1:http://example.com/

x2:http://baidu.com/example.com

使用f1解析x1得到x1域名部分y1:

f1(x1)=y1=example.com

使用f2解析x2得到x2的路径部分y2:

f2(x2)=y2=example.com

解析出来得到的url片段是一样的,但它们实际代表着两类数据:

域名为example.com的url,被f1y1标识出;路径为example.com的url,被f2y2标识出;也就是综合标识包括与解析规则的种类相对应的标识,以便于对得到的数据进行进一步区分。

在本实施例中,预设函数可以是正则表达式,也就是可以利用正则表达式对待识别url进行解析,得到待识别url中的域名部分,然后根据正则表达式的内容与域名部分确定综合标识。其中,综合标识可以包括字符、数字等。

可理解地,电子设备10的处理单元11可以将计算出的解析规则标识(先将解析规则函数使用pickle等方法序列化为字节流,再使用md5等算法取该字节流的散列值,得到解析规则标识)与域名部分组合,得到综合标识。其中,处理单元11可以使用该综合标识作为关键字(key)从缓存模块14中取已有的检测结果数据,该检测结果数据可以包括上述的资源数据以及相应的标识。其中,解析规则可以根据需求进行设置,从而达到按需求去重的目的,这里对解析规则不作具体限定。

步骤s230,将综合标识作为关键字,判断缓存模块14中是否存在与关键字对应的第一结果数据。

可理解地,综合标识除了与解析规则的种类相对应的第一标识外,还可以包括与待识别数据对应的第二标识。第二标识可以为url中的域名部分(或域名片段)。该域名部分可以作为关键字,以从缓存模块14中确定是否存在与关键字对应的第一结果数据。其中,第一结果数据可以为url所属站点的应用类型。

另外,缓存模块14中可以预先存储有与资源数据对应的标识,而与综合标识等同的标识可以作为目标标识。目标标识对应的url也就是与待识别url相同或相似的ulr,目标标识对应的资源数据便可以作为待识别url的资源数据。

步骤s240,当缓存模块14中存在与关键字对应的第一结果数据时,将第一结果数据存入到预先指定的可读存储介质中。

可理解地,若缓存模块14中存在与综合标识等同的目标标识,电子设备10可以将第一结果数据存储到本地,也可以将结果数据发送至其他设备进行存储。即,预先指定的可读存储介质可以是,但不限于电子设备10的存储单元13、缓存模块14或其他设备的存储器。

另外,若缓存模块14中存在与综合标识等同的目标标识,电子设备10便可以从缓存模块14中获取预先与目标标识对应的资源数据,以作为待识别url的资源数据,无需再从服务器20或其他设备获取与待识别url对应的资源数据,达到对相同或相似url的去重效果,从而可以降低电子设备10的运算量及存储资源的占用,缩短处理时长,进而有助于提高电子设备10的处理效率。

可选地,在步骤s240之后,方法还可以包括:获取新的uri和/或网页资源以作为新的待识别数据以进行识别处理。

可理解地,在对待识别url完成识别处理后,可以继续获取新url并重复进行步骤s210至步骤s240,从而实现对多条url进行检测,避免对相同或相类似的url重复检测获取资源,进而降低电子设备10的运算量及存储资源的占用量,有助于提高电子设备10的运行效率。

可选地,在本实施例中,当缓存模块14中不存在与关键字对应的第一结果数据时,方法还可包括:确定与待识别数据对应的第二结果数据,并将第二结果数据以综合标识为新的关键字存入缓存模块14,并将第二结果数据存入可读存储介质中。其中,该步骤与步骤s240为两个并列的步骤,对于同一个待识别数据,在同一时刻会根据实际情况选择这两个步骤中的一个步骤来执行。另外,新的关键字可以对后续相同或类似的待识别url进行识别判断,有助于在后续处理过程中提高电子设备10的运行效率。

请参照图4,为本发明实施例提供的数据处理装置100的方框示意图。本发明实施例提供的数据处理装置100可以应用于上述的电子设备10,用于执行上述数据处理方法的各步骤,能够避免从外界(服务器20或其他设备)对相同或类似待识别数据的结果数据进行重复检测,从而提高电子设备10的运行效率。其中,数据处理装置100可以包括获得单元110、解析单元120、判断单元130及录入单元140。

获得单元110,获得待识别数据及与待识别数据对应的内容资源,待识别数据包括uri、网页资源中的至少一种。

解析单元120,根据预设解析规则集中的解析规则对待识别数据进行解析,得到与待识别数据及与待识别数据等同的数据相对应的综合标识,其中,综合标识包括与解析规则的种类相对应的标识。

可选地,解析单元120还用于:通过预设函数对uri进行解析,得到uri中的域名部分;根据预设函数的内容与域名部分确定综合标识。

判断单元130,将综合标识作为关键字,判断缓存模块14中是否存在与关键字对应的第一结果数据。

可选地,判断单元130还用于:将综合标识作为第一关键字,判断预存列表中是否存在于第一关键字等同的第二关键字,在第一关键字与第二关键字的相似度超过预设值时,确定预存列表中存在于综合标识等同的目标标识。

录入单元140,当缓存模块14中存在与关键字对应的第一结果数据时,将第一结果数据存入到预先指定的可读存储介质中。

或者,录入单元140还用于当缓存模块14中不存在与关键字对应的第一结果数据时,确定与待识别数据对应的第二结果数据,并将第二结果数据以综合标识为新的关键字存入缓存模块14,并将第二结果数据存入可读存储介质中。

可选地,在录入单元140将第一结果数据存入到预先指定的可读存储介质中之后,获得单元110可以继续获取新的uri和/或网页资源以作为新的待识别数据以进行识别处理。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的数据处理装置100的具体工作过程,可以参考前述方法中各步骤中对应的操作过程,在此不再过多赘述。

本发明实施例还提供一种计算机可读存储介质。所述可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如上述实施例中所述的数据处理方法。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。

综上所述,本发明提供一种数据处理方法、装置及电子设备。该方法通过预设解析规则集中的解析规则对待识别数据进行解析,得到与待识别数据及与待识别数据等同的数据相对应的综合标识,其待识别数据包括uri、网页资源中的至少一种,综合标识包括与解析规则的种类相对应的标识,然后,将综合标识作为关键字,判断缓存模块中是否存在与关键字对应的第一结果数据,若存在,则将第一结果数据存入到预先指定的可读存储介质中。基于此,可以避免重复从外界获取与待识别数据的资源相类似的资源,避免了资源的冗余检测,进而有助于提高设备的运行效率。

在本发明所提供的实施例中,应该理解到,所揭露的装置、系统和方法,也可以通过其它的方式实现。以上所描述的装置、系统和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1