一种数据处理方法、装置、设备及介质与流程

文档序号:29944956发布日期:2022-05-07 15:49阅读:61来源:国知局
一种数据处理方法、装置、设备及介质与流程

1.本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、设备及介质。


背景技术:

2.在互联网发展初期,网站比较少,人们检索信息比较方便,然而随着时间推进,互联网有了爆炸式增速,越来越多的网站,app如雨后春笋的出现,普通的网络用户想检索自己想要的信息简直就像是大海捞针,所以这时就需要一个专门用来获取信息的“机器人”程序可以像个蜘蛛一样在互联网络里搜索资料,这种即被称之为爬虫。
3.早期的web网页仅能使用本地默认的字库确定字体文件,比如本地的宋体、微软雅黑等字体的字库。而随着w3c(万维网联盟)网络规范的发展,出现了@font-face,即web嵌入字体技术,它是一种连接服务器上的字体的方式,是w3c网络规范中的css3(cascading style sheet,层叠样式表)中的一个模块,主要用于根据一种或多种自定义的web字体文件更改网页中关键数据,比如,更改关键数据的字形索引,更改关键数据的字体偏移度等,以混淆网页中的关键数据。后续如果通过采用爬虫代码获取这些网页的内容,则会因为没有采用规范的解密工具,即不知道该网页中的内容对应的解密方式,无法对该网页中的内容进行解密,使得用户无法检索到自己想要的信息,降低用户体验。
4.因此,如何准确地获取网页中的内容,是一个亟待解决的技术问题。


技术实现要素:

5.本发明实施例提供了一种数据处理方法、装置、设备及介质,用以解决现有爬虫代码无法准确地获取网页中内容数据的问题。
6.本发明实施例提供了一种数据处理方法,所述方法包括:
7.获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型;
8.将所述显示坐标输入到所述内容识别模型中进行处理,获取所述待解密文字对应的字形索引;
9.基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
10.本发明实施例提供了一种数据处理装置,所述装置包括:
11.获取单元,用于获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型;
12.第一处理单元,用于将所述显示坐标输入到所述内容识别模型中进行处理,获取所述待解密文字对应的字形索引;
13.第二处理单元,用于基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
14.本发明实施例提供了一种数据处理设备,所述数据处理设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述所述数据处理方法的
步骤。
15.本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述数据处理方法的步骤。
16.由于预先训练有目标网站对应的内容识别模型,使得后续在获取目标网页中的内容数据的过程中,获取到目标网页中待解密文字对应的显示坐标后,将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引,后续基于该字形索引,获得待解密文字在目标网页中的明码,从而实现无论是对于使用本地默认的字库的网站,还是采用了一种或多种自定义的web字体文件的网站,均可以准确地获取网页中待解密字符在网页中的明码,充分考虑到网页内容数据获取场景的复杂性,提高了获取待解密字符在网页中的明码的通用性和高性能要求。
附图说明
17.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1为本发明实施例提供了一种数据处理过程示意图;
19.图2为本发明实施例提供的具体的内容识别模型训练流程示意图;
20.图3为本发明实施例提供的具体的数据处理流程示意图;
21.图4为本发明实施例提供的一种数据处理装置的结构示意图;
22.图5为本发明实施例提供的一种数据处理设备的结构示意图。
具体实施方式
23.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
24.本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
25.在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
26.为了方便理解,下面对本发明实施例中涉及的部分概念进行解释:
27.超文本标记语言(hypertext markup language,html):是一种标记语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的internet资源连接为一个逻辑整体。html文本是由html命令组成的描述性文本,html命令可以说明文字,图形、动画、声音、表格、链接等。
28.字体编辑软件(fontcreator):可以方便对网页中包含的文字进行字体修改,以及查看自定义的web字体与字形名称之间的映射关系工具。
29.css3(cascading style sheet,层叠样式表):是css技术的升级版本,主要包括列表模块,超链接方式,语言模块,背景和边框,文字特效,多栏布局等模块。
30.woff(web open font format,web开放字体格式):是一种网页所采用的字体格式标准。
31.前端字体样式渲染:其基本原理是前端开发者根据一种或多种自定义的web字体文件更改网页中关键数据,通常在html命令中定义自定义字体使用@font-face。当然,因为truetypefont类型的字体文件过大,降低加载网页的内容数据的速度,使得woff类型的文件被广泛会用,可以通过fontcreator工具或者在线字体编辑(fonteditor)工具来查看woff文件的内容以及对woff文件中的数据进行替换操作,在woff文件里每一个明码都有一个字形索引对应,woff文件实际就是字形索引与明码的映射表。
32.常见的前端字体样式渲染大致分为三种:
33.1)早期的web网页仅能使用本地默认的字库确定字体文件,比如本地的宋体、微软雅黑等字体的字库。即该字体文件是固定的。大部分网站使固定的字体文件来做数据替换,固定的字体文件表明每个数据的加密方式都是写死不变的,所以每次网站在加载时都是引用同一个字体文件对该网站中的内容数据进行解密。
34.2)由于使用固定的字体文件会降低网页的内容数据的获取难度,使得css3得到了广泛的应用。该css3只是为了修饰页面的,在页面渲染的时候不会改变网页中的文本内容,且字体加工以及映射都是由css3来完成的,开发人员即便用其他非css3的自动化工具也没有办法准确地获得该网页中完整的文字内容。开发人员使用css3来加密网页中的关键数据,即开始每次都更换新的字体文件,字体文件不更换明码,只更换明码对应的字形索引,使得每次获取到的字体文件中字形索引都不一样,解析的时候就不能使用同一套字符编码器解析了。
35.3)由于动态更换字形索引也能根据每个明码分别对应的显示坐标来破解,使得在对网页中关键数据进行加密时,可以将修改同一明码在每个字体文件中所对应的显示坐标,比如,减少某些显示坐标,偏移某些显示坐标等,使得同一字符每次都产生一定的变形,解析的时候也无法根据每个明码分别对应的显示坐标来破解。
36.因此,如何在复杂的网页内容数据获取场景下,准确地获取网页中内容数据是一个亟待解决的问题。
37.为了解决上述的问题,本发明实施例提供了一种数据处理方法、装置、设备及介质,用以准确地获取网页中内容数据。在本发明实施例中,由于预先训练有目标网站对应的内容识别模型,使得后续在获取目标网页中的内容数据的过程中,获取到目标网页中待解密文字对应的显示坐标后,将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引,后续基于该字形索引,获得待解密文字在目标网页中的明码,从而实现无论是对于使用本地默认的字库的网站,还是采用了一种或多种自定义的web字体文件的网站,均可以准确地获取网页中待解密字符在网页中的明码,充分考虑到网页内容数据获取场景的复杂性,提高了获取待解密字符在网页中的明码的通用性和高性能要求。
38.应当理解的是,上述实施例中所举出的应用场景仅是为了方便说明所提出的示例性的场景,并不是对本技术实施例所提供的一种数据处理方法、装置、设备及介质的应用场景的一种限定。本领域普通技术人员可知,随着新业务场景的出现,本技术实施例提供的技
术方案对于类似的技术问题,同样适用。
39.实施例1:
40.图1为本发明实施例提供了一种数据处理过程示意图,该过程包括:
41.s101:获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型。
42.本技术实施例提供的数据处理方法应用于数据处理设备,该数据处理设备可以为智能设备,比如,移动终端、电脑等,也可以是服务器,比如,应用服务器等。
43.在一种可能的场景中,当开发人员需要获取目标网站上的网页的内容数据时,可以通过数据处理设备输入目标网站的该网页的网址,即目标网页的网址,从而实现通过数据处理设备访问目标网页。数据处理设备基于获取到的网址,请求目标网站所对应的服务器,并接收该目标网站所对应的服务器发送的该目标网页的网页内容数据。数据处理设备通过对该网页内容数据进行分析,获取该网页内容数据的网页源代码。示例性的,为了获取网页源代码,可以利用python,java等语言撰写网络爬虫代码,然后利用编写好的爬虫代码根据需要自动爬取网页内容数据,并对该网页内容数据进行分析,获取网页源代码。其中,该网页源代码包括未加密文字、待解密文字以及待解密文字所使用的字体文件的统一资源定位符。
44.需要说明的是,虽然网页的显示界面的内容是可读的,但是考虑到开发人员在通过爬虫代码获取大量的网页内容数据的过程中,无法使用css3工具对目标网页中的待解密文字进行解密,导致通过爬虫代码爬取的网页源代码中待解密文字显示为乱码。
45.数据处理设备对获取到的网页源代码进行解析处理,以获取该网页源代码中包含的统一资源定位符。通过网页异步请求接口以及该统一资源定位符,获取该字体文件。示例性的,通过解析获取到的网页源代码,在样式区中找到字体文件的url,利用requests、urllib等工具模块抓取字体文件的url中的内容,其中,该字体文件中包含有基于base64编码方式处理过的数据,当然也可以采用其它合适的能够用于抓取url中内容的工具模块获取所述字体文件。
46.需要说明的是,该字体文件中包括至少一个明码以及该至少一个明码分别对应的字形索引。可以理解的是,任一待解密文字对应的明码为对该待解密文字进行解密后获取到的文字,即该待解密文字对应的明码,该明码可以是文字也可以是数字,还可以是字母等。例如,字体文件中包括明码“7”和“0”,“7”对应的字形索引(name)为“unie9c7”,“0”对应的字形索引为“uniee76”。
47.如果数据处理设备是通过css3获取到字体文件的,则数据处理设备可通过预先配置的字体读取工具(如ttfont字体库)读取该字体文件,获取明码与字形索引的对应关系,以及字形索引与待解密文字的对应关系。根据明码与字形索引的对应关系,以及字形索引与待解密文字的对应关系,获取待解密文字与明码的对应关系。然后针对目标网页中包含的每个待解密文字,可以基于待解密文字与明码的对应关系,确定该待解密文字对应的明码,并根据该明码对应的显示坐标以及该待解密文字在目标网页中的位置,对目标网页中该待解密文字进行更新。
48.其中,通过预先配置的字体读取工具读取该字体文件后,可以将该字体文件保存为xml格式,从而方便开发人员确定明码与字形索引的对应关系,以及字形索引与待解密文
字的对应关系,进而确定待解密文字与明码的对应关系。
49.如果数据处理设备是通过爬虫代码获取到字体文件的,则数据处理设备无法使用css3工具对目标网页中的待解密文字进行解密,导致无法准确地获取到目标网页中的内容数据。并且,目标网页的开发人员可能会动态更换同一明码在该目标网页的每个字体文件中的字形索引,或者是,修改同一明码在该目标网页的每个字体文件中所对应的显示坐标,比如,减少某些显示坐标,偏移某些显示坐标等,使得同一字符每次都产生一定的变形,从而提高获取目标网页的内容数据的难度。因此,在本发明实施例中,预先训练有目标网站所对应的内容识别模型,以通过该内容识别模型可以对目标网站中的所有网页包含的待解密文字进行解密,从而保证准确地获取目标网站中所有网页的内容数据,有利于进行网络数据采集、大数据分析、网页分析等应用的发展。
50.在实际应用过程中,即使同一明码在该目标网页的每个字体文件中的字形索引被频繁更换,但一般该明码对应的显示坐标是不会变化的,可以基于每个明码对应的显示坐标,对目标网页中的待解密文字进行解密。并且,即使同一明码在该目标网页的每个字体文件中所对应的显示坐标被修改,但该明码在该目标网页的每个字体文件中所对应的显示坐标的修改程度不会很大,即该明码在该目标网页的每个字体文件中所对应的显示坐标的相似度极高。因此,在本发明实施例中,可以获取明码与显示坐标之间的联系,并训练内容识别模型学习明码与显示坐标之间的联系,从而准确地获取目标网页的内容数据。
51.需要说明的是,用于训练内容识别模型的设备可以与数据处理设备相同,也可以不同。
52.在一种可能的实施方式中,由于在进行内容识别模型训练的过程中,一般采用离线的方式,进行内容识别模型训练的。当获取到训练完成的内容识别模型后,将训练完成的内容识别模型保存在数据处理设备。
53.具体实施过程中,数据处理设备获取到目标网页的字体文件后,可以对该字体文件进行解析,获取该目标网页中待解密文字对应的显示坐标,从而方便后续可以基于目标网页中待解密文字对应的显示坐标、以及该目标网页归属的目标网站所对应的内容识别模型,对该待解密文字进行解密。
54.s102:将所述显示坐标输入到所述内容识别模型中进行处理,获取所述待解密文字对应的字形索引。
55.由于预先训练有目标网站对应的内容识别模型,当基于上述的实施例获取到目标网页中待解密文字对应的显示坐标后,可以将该待解密文字对应的显示坐标输入到该内容识别模型中。通过该内容识别模型,对该待解密文字对应的显示坐标进行处理,获取该待解密文字对应的字形索引。
56.其中,该字形索引用于标识该待解密文字对应的明码。该字符索引可以通过数字、字符串等形式进行标识,比如,“unie9c7”,也可以直接通过明码进行标识,当然还可以通过其它形式进行表示,只要可以唯一标识待解密文字对应的明码的形式均可应用于本发明实施例中。
57.需要说明的是,在本发明实施例中,该内容识别模型可以是神经网络,比如,卷积神经网络、循环神经网络等,也可以是knn模型。
58.s103:基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
59.当基于上述的实施例获取到字形索引后,即可基于该字形索引,进行相应的处理,获取该待解密文字在目标网页中的明码。
60.在一种示例中,若预先配置了字形索引与显示坐标的对应关系,则基于上述的实施例获取到了字形索引后,即可根据该字形索引与显示坐标的对应关系,确定该获取到的字形索引所对应的显示坐标。根据确定的显示坐标,绘制解密字符,从而根据绘制的解密字符以及待解密文字在目标网页中的位置,确定该待解密文字在目标网页中的明码。
61.在另一种示例中,若预先配置了字形索引与解码字符的对应关系,以及解码字符与显示坐标的对应关系,则基于上述的实施例获取到了字形索引之后,根据该字形索引与解码字符的对应关系,确定该获取到的字形索引所对应的解密字符。根据解码字符与显示坐标的对应关系,确定获取到的解密字符所对应的显示坐标。根据该解密字符对应的显示坐标以及待解密文字在目标网页中的位置,确定该待解密文字在目标网页中的明码。具体的,根据该解密字符对应的显示坐标,绘制该解密字符,从而根据绘制的解密字符以及待解密文字在目标网页中的位置,确定该待解密文字在目标网页中的明码。
62.由于预先训练有目标网站对应的内容识别模型,使得后续在获取目标网页中的内容数据的过程中,获取到目标网页中待解密文字对应的显示坐标后,将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引,后续基于该字形索引,获得待解密文字在目标网页中的明码,从而实现无论是对于使用本地默认的字库的网站,还是采用了一种或多种自定义的web字体文件的网站,均可以准确地获取网页中待解密字符在网页中的明码,充分考虑到网页内容数据获取场景的复杂性,提高了获取待解密字符在网页中的明码的通用性和高性能要求。
63.实施例2:
64.为了准确地对待解密文字进行解密,在上述实施例的基础上,在本发明实施例中,所述内容识别模型通过如下方式获取:
65.获取所述目标网站的样本集中的至少一个样本数据;其中,所述样本数据包括所述目标网站中任一网页所包含的待解密字符对应的显示坐标,所述样本数据对应有第一字形索引;
66.基于所述至少一个样本数据、以及所述至少一个样本数据分别对应的第一字形索引,确定所述内容识别模型。
67.为了准确地对待解密文字进行解密,在本发明实施例中,需要预先收集用于训练目标网站对应的内容识别模型的样本集,以根据该样本集中包含的多个样本数据,对内容识别模型进行训练。其中,该样本集中的样本数据包括目标网站中任一网页所包含的待解密字符对应的显示坐标,可以理解的是,该样本集为目标网站对应的样本集,且该样本数据对应有字形索引(记为第一字形索引),该第一字形索引用于标识该样本数据对应的待解密文字所对应的明码。
68.下面以内容识别模型训练的设备与数据处理设备相同为例对内容识别模型的训练过程进行说明,为了获取到样本数据,数据处理设备可以获取目标网站中至少一个网页的网址,并基于获取到的网址,获取目标网站中至少一个网页的网页内容数据。针对获取到的每个网页内容数据,对该网页内容数据进行解析,获取该网页内容数据的网页源代码。然后通过对获取到的网页源代码进行解析处理,以获取该网页源代码中包含的统一资源定位
符。通过网页异步请求接口以及该统一资源定位符,获取该字体文件,例如,woff文件。通过预先配置的字体读取工具读取该字体文件后,可以将该字体文件保存为xml格式。基于xml格式的字体文件,获取待解密文字与字形索引的对应关系,字形索引与明码的对应关系。根据待解密文字与字形索引的对应关系,以及字形索引与明码的对应关系,确定待解密文字与明码的对应关系。根据该待解密文字与明码的对应关系,以及明码与显示坐标的对应关系,确定待解密字符对应的样本数据。
69.在一种可能的实施方式中,如果样本集中包含充足数量的样本数据,即包含了目标网站中不同网页下大量的样本数据,则可以根据目标网站对应的样本集中的样本数据对原始内容识别模型进行训练。
70.在另一种可能的实施方式中,如果为了保证样本数据的多样性,提高内容识别模型的鲁棒性,可以通过对每个明码分别对应的显示坐标,进行加噪处理的方式,以得到大量的样本数据。
71.需要说明的是,加噪后的样本数据所对应的第一字形索引与加噪前的样本数据对应的第一字形索引相同。
72.示例性的,可以通过如下方式对每个明码分别对应的显示坐标进行加噪处理:
73.方式一,可以通过人工的方式,对每个明码分别对应的显示坐标进行修改。例如,当采集到任一样本数据后,可以将该样本数据确定为原始样本数据。开发人员可以根据工作经验,将该原始样本数据对应的至少一个显示坐标删除,或,将该原始样本数据对应的至少一个显示坐标进行偏移,从而获取加噪样本数据。然后将该原始样本数据以及加噪样本数据一并保存到样本集中,以根据样本集中的原始样本数据以及加噪样本数据一起训练上述的原始内容识别模型。
74.方式二,根据预设的偏移范围,对每个明码分别对应的显示坐标进行修改。例如,当采集到任一样本数据后,可以将该样本数据确定为原始样本数据。根据预设的偏移范围中的任一数值,对原始样本数据中的至少一个显示坐标进行偏移,从而获取加噪后的样本数据。然后将该原始样本数据以及加噪样本数据一并保存到样本集中,以根据样本集中的原始样本数据以及加噪样本数据一起训练上述的原始内容识别模型。
75.方式三、针对每个明码,根据预设的数量范围,将该明码对应的至少一个显示坐标删除。例如,当采集到任一样本数据后,可以将该样本数据确定为原始样本数据。根据预设的数量范围中的任一数值,对原始样本数据中的至少一个显示坐标删除,从而获取加噪后的样本数据。然后将该原始样本数据以及加噪样本数据一并保存到样本集中,以根据样本集中的原始样本数据以及加噪样本数据一起训练上述的原始内容识别模型。
76.考虑到可能存在同一明码在该目标网页的每个字体文件中的字形索引被频繁更换,或者是,同一明码在该目标网页的每个字体文件中所对应的显示坐标被修改的情况。因此,在本发明实施例中,可以多次采集目标网站中至少一个网页对应的字体文件,以根据获取到的每个字体文件,获取待解密字符在不同加密方式下所对应的显示坐标,从而进一步保证样本数据的多样性,提高内容识别模型的鲁棒性。
77.其中,可以按照预设的周期采集目标网站中至少一个网页对应的字体文件,也可以在预设的时间点采集目标网站中至少一个网页对应的字体文件。当然,还可以是接收到采集指令后,采集目标网站中至少一个网页对应的字体文件。该采集指令可以是数据处理
设备采集到的,也可以是其它设备发送的。
78.在一种可能的实施方式中,在样本数据的收集过程中,可能出现收集到的某一样本数据中存在缺失值的情况,例如,某一样本数据中存在非数值(not anumber,nan),该缺失值很有可能会影响后续对内容识别模型的训练,降低内容识别模型的精确度。因此,在本发明实施例中,针对样本集中的每个样本数据,若确定该样本数据中存在缺失值,则需要对该样本数据进行处理。
79.示例性的,可以通过如下方式对存在缺失值的样本数据进行处理:
80.方式1、如果获取到的样本数据大于预设的数量阈值,说明当前收集到的样本数据足够的多,则可以直接将存在缺失值的样本数据删除,从而避免存在缺失值的样本数据影响后续对内容识别模型的训练。
81.方式2、为了保证样本集中的样本数据的多样性,可以基于该样本数据中包含的显示坐标,确定均值显示坐标。然后根据该均值显示坐标,对该样本数据中包含的缺失值进行更新。
82.在一种示例中,可以只基于该样本数据中包含的显示坐标,确定均值显示坐标。
83.在另一种示例中,还可以获取该样本数据对应的待解密文字对应的至少一个其它样本数据。根据该至少一个其它样本数据中包含的显示坐标、以及该样本数据中包含的显示坐标,确定均值显示坐标。
84.例如,可以通过如下代码对存在缺失值的样本数据进行处理:
85.imputer=simpleimputer(missing_values=np.nan,strategy='mean')
86.在一种可能的实施方式中,可以通过如下两种方式基于至少一个样本数据、以及至少一个样本数据分别对应的第一字形索引,确定内容识别模型:
87.方式a、该内容识别模型可以为神经模型。
88.具体实施过程中,在获取到目标网站的样本集后,可以从样本集获取任一样本数据,将该样本数据输入到原始内容识别模型中。通过原始内容识别模型,可以对输入的样本数据进行处理,从而获取该样本数据对应的待解密字符对应的字形索引(记为第二字形索引)。根据第一字形索引以及第二字形索引,确定损失值。根据该损失值,对原始内容识别模型进行训练,以调整原始内容识别模型的各参数的参数值。
89.由于用于对内容识别模型训练的样本集中包含大量的样本数据,对每个样本数据都进行上述操作,当满足预设的收敛条件时,该内容识别模型训练完成。
90.其中,满足预设的收敛条件可以为样本集中的样本数据通过该原始内容识别模型训练后得到的第二字形索引与第一字形索引一致的样本数据个数大于设定数量,或对原始内容识别模型进行训练的迭代次数达到设置的最大迭代次数等。具体实施中可以灵活进行设置,在此不做具体限定。
91.作为一种可能的实施方式,在进行内容识别模型训练时,可以把样本集中的样本数据分训练样本和测试样本,先基于训练样本对原始内容识别模型进行训练,再基于测试样本对上述已训练的内容识别模型的可靠程度进行验证。
92.方式b、该内容识别模型还可以为knn模型。
93.虽然knn模型从原理上依赖于极限定理,但在类别决策时,只与极少量的相邻样本有关。由于knn方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类
别的,对于不同明码对应的显示坐标存在较多交叉或重叠较多的场景来说,knn模型不仅可以准确地学习到明码与显示坐标之间的联系,而且计算也较为简单。并且,knn模型的核心思想是如果一个输入数据在特征空间中的k个最相邻的样本数据中,该k个最相邻的样本数据大多数属于某一个类别,则该输入数据也属于这个类别,并具有这个类别上样本数据的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本数据的类别来决定输入数据所属的类别。可以理解的是,在本发明实施例中,一种字形索引可以理解为一种类别。
94.示例性的,knn模型原理是输入数据与所有样本数据之间的距离,该距离可以为欧几里得距离公式。也可以理解的是,输入数据与所有样本数据之间的相似度。例如,输入数据与任一样本数据之间的欧式距离可通过如下公式表示:
[0095][0096]
其中,n表示样本数据包含的特征数量,x表示输入数据,y表示样本数据,xi表示输入数据中第i维特征,yi表示样本数据中第i维特征。
[0097]
再例如,k=1,已知两个字形索引的样本数据分别为a字形索引的样本数据1为(0,0,2,5),b字形索引的样本数据2为(1,1,5,2),当前获取到的输入数据为(0,1,2,4),通过欧几里得距离公式,确定输入数据中的每维特征与样本数据1中的每维特征之间的距离分别为0,1,0,1,输入数据中的每维特征与样本数据2中的每维特征之间的距离分别为1,0,9,4。根据输入数据中的每维特征与样本数据1中的每维特征之间的距离,确定输入数据与样本数据1之间的欧几里得距离为2。根据输入数据中的每维特征与样本数据2中的每维特征之间的距离,确定输入数据与样本数据2之间的欧几里得距离为14。根据获取到的每个距离,确定与输入数据距离较近的1个样本数据为样本数据1。根据样本数据1所归属的字形索引为a,确定输入数据归属的字形索引也为a。
[0098]
为了方便确定输入数据与每个样本数据之间的距离,需要保证每个样本数据中包含的特征的维数相同,输入数据中包含的特征的维数与每个样本数据中包含的特征的维数相同。
[0099]
在一种可能的实施方式中,为了方便确定输入数据与每个样本数据之间的距离,可以对每个样本数据以及输入数据进行量化。
[0100]
具体实施过程中,若内容识别模型为knn模型,则获取到样本集中包含的至少一个样本数据后,基于该至少一个样本数据以及该至少一个样本数据分别对应的第一字形索引,即可确定knn模型。可以理解的是,该knn模型包含有该至少一个样本数据。
[0101]
作为一种可能的实施方式,可以把样本集中的样本数据分训练样本和测试样本,先基于训练样本确定knn模型,再基于测试样本对knn模型的可靠程度进行验证,基于验证结果,调整knn模型的k值,和/或,调整knn模型所包含的测试样本。
[0102]
需要说明的是,k的取值非常的重要,可以从选取一个较小的k值开始,不断增加k的值,然后计算测试集合的准确率,最终找到一个比较合适的k值。如果k的取值过小时,一旦与输入数据邻近的样本数据中存在噪声,则该噪声对输入数据的预测结果产生比较大地影响,例如取k值为1时,一旦与输入数据最近的样本数据是噪声,那么就影响输入数据的预
测结果;如果k的值取的过大时,就相当于用较大邻域中的样本数据进行预测,这时与输入数据距离较远的样本数据对输入数据的预测结果产生比较大地影响,使预测发生错误。
[0103]
在一种可能的实施方式中,在根据与输入数据距离较近的预设数量的样本数据分别对应的第一字形索引,确定输入数据对应的字形索引时,可以根据该预设数量的样本数据分别与该输入数据的距离,分别为该预设数量的样本数据分配权重值,以保证与输入数据距离更近的样本数据对该输入数据的预测结果的影响更大,与输入数据距离更远的样本数据对该输入数据的预测结果的影响更小。例如,与输入数据距离越近的样本数据对应的权重值越大,与输入数据距离越远的样本数据对应的权重值越远。
[0104]
当基于上述的实施例获取到knn模型以及该knn模型对应的k值后,后续在应用该knn模型对待解密文字进行解密时,可以通过该knn模型,确定待解密文字对应的显示坐标分别与每个样本数据的距离,基于每个距离,确定与该显示坐标距离较近的预设数量(即k值)的样本数据(记为参考样本数据)。根据每个参考样本数据分别对应的第一字形索引,确定对应最多参考样本数据的第一字形索引,并将该第一字形索引确定为待解密文字对应的字形索引。
[0105]
图2为本发明实施例提供的具体的内容识别模型训练流程示意图,该流程包括:数据处理设备可以获取目标网站中至少一个网页的网址,并通过请求脚本以及基于获取到的网址,获取目标网站中至少一个网页的网页内容数据。针对获取到的每个网页内容数据,对该网页内容数据进行解析,获取该网页内容数据的网页源代码。然后通过对获取到的网页源代码进行解析处理,以获取该网页源代码中包含的统一资源定位符。通过网页异步请求接口以及该统一资源定位符,获取该字体文件,例如,woff文件或者是ttf文件。通过fontcreator读取该字体文件,可以将该字体文件保存为xml格式。基于xml格式的字体文件,获取待解密文字与字形索引的对应关系,字形索引与明码的对应关系。根据待解密文字与字形索引的对应关系,以及字形索引与明码的对应关系,确定待解密文字与明码的对应关系。根据该待解密文字与明码的对应关系,以及明码与显示坐标的对应关系,确定待解密字符对应的样本数据,即获取knn训练集。基于样本数据以及样本数据对应的第一字形索引,确定该knn模型。然后基于上述获取knn训练集相同的步骤,获取knn测试集。通过knn测试集中的测试样本,对knn模型进行验证,并在确定knn模型的准确率达到预设准确率阈值时,将当前knn模型所对应的所有样本数据持久化保存,以便后续基于持久化的样本数据对目标网页中的待解密文字进行解密。
[0106]
实施例3:
[0107]
下面通过具体的实施例对本发明实施例提供的具体的数据处理流程进行说明,图3为本发明实施例提供的具体的数据处理流程示意图,以用于内容识别模型训练的设备与数据处理设备相同为例,该流程包括:
[0108]
s301:获取目标网站的样本集中的至少一个样本数据。
[0109]
其中,样本数据包括目标网站中任一网页所包含的待解密字符对应的显示坐标,样本数据对应有第一字形索引。
[0110]
s302:针对样本集中的每个样本数据,若确定该样本数据中存在缺失值,则基于该样本数据中包含的显示坐标,确定均值显示坐标;根据均值显示坐标,对缺失值进行更新。
[0111]
s303:对s302处理后的样本数据进行量化处理。
[0112]
s304:基于s303获取到的至少一个样本数据、以及至少一个样本数据分别对应的第一字形索引,确定内容识别模型。
[0113]
其中,该内容识别模型可以为knn模型。
[0114]
s305:获取目标网页中待解密文字对应的显示坐标、以及目标网页归属的目标网站所对应的内容识别模型。
[0115]
s306:将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引。
[0116]
其中,具体的将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引,包括:
[0117]
确定显示坐标分别与每个样本数据的距离;
[0118]
基于每个距离,确定与显示坐标距离较近的预设数量的参考样本数据;
[0119]
根据每个参考样本数据分别对应的第一字形索引,获取待解密文字对应的字形索引。
[0120]
s307:基于字形索引,确定字形索引对应的解密字符。
[0121]
s308:基于解密字符对应的显示坐标以及待解密文字在目标网页中的位置,获得明码。
[0122]
实施例4:
[0123]
本发明实施例提供了一种数据处理装置,图4为本发明实施例提供的一种数据处理装置的结构示意图,该结构包括:
[0124]
获取单元41,用于获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型;
[0125]
第一处理单元42,用于将该显示坐标输入到内容识别模型中进行处理,获取该待解密文字对应的字形索引;
[0126]
第二处理单元43,用于基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
[0127]
进一步地,所述第二处理单元43,具体用于基于所述字形索引,确定所述字形索引对应的解密字符;基于所述解密字符对应的显示坐标以及所述待解密文字在所述目标网页中的位置,获得所述明码。
[0128]
进一步地,所述装置还包括:训练单元;
[0129]
所述训练单元,用于通过如下方式获取内容识别模型:
[0130]
获取所述目标网站的样本集中的至少一个样本数据;其中,所述样本数据包括所述目标网站中任一网页所包含的待解密字符对应的显示坐标,所述样本数据对应有第一字形索引;
[0131]
基于所述至少一个样本数据、以及所述至少一个样本数据分别对应的第一字形索引,确定所述内容识别模型。
[0132]
进一步地,所述训练单元,还用于基于所述至少一个样本数据、以及所述至少一个样本数据分别对应的第一字形索引,确定所述内容识别模型之前,针对所述样本集中的每个样本数据,若确定该样本数据中存在缺失值,则基于该样本数据中包含的显示坐标,确定均值显示坐标;根据所述均值显示坐标,对所述缺失值进行更新。
[0133]
进一步地,所述训练单元,具体用于从所述至少一个样本数据中,获取任一样本数据;将所述样本数据输入到原始内容识别模型进行处理,确定所述样本数据对应的待解密字符对应的第二字形索引;基于所述第一字形索引以及所述第二字形索引,对所述原始内容识别模型进行训练,以获取训练完成的内容识别模型。
[0134]
进一步地,所述第一处理单元42,具体用于确定所述显示坐标分别与每个所述样本数据的距离;基于每个所述距离,确定与所述显示坐标距离较近的预设数量的参考样本数据;根据每个所述参考样本数据分别对应的第一字形索引,获取所述待解密文字对应的字形索引。
[0135]
实施例5:
[0136]
在上述实施例的基础上,本发明实施例还提供了一种电子设备,图5为本发明实施例提供的一种电子设备的结构示意图,如图5所示,包括:处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信;
[0137]
存储器53中存储有计算机程序,当程序被处理器51执行时,使得处理器51执行如下步骤:
[0138]
获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型;
[0139]
将所述显示坐标输入到所述内容识别模型中进行处理,获取所述待解密文字对应的字形索引;
[0140]
基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
[0141]
由于上述电子设备解决问题的原理与数据处理方法相似,因此上述电子设备的实施可以参见方法的实施例1-3,重复之处不再赘述。
[0142]
实施例6:
[0143]
在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有可由处理器执行的计算机程序,当程序在处理器上运行时,使得处理器执行时实现如下步骤:
[0144]
获取目标网页中待解密文字对应的显示坐标、以及所述目标网页归属的目标网站所对应的内容识别模型;
[0145]
将所述显示坐标输入到所述内容识别模型中进行处理,获取所述待解密文字对应的字形索引;
[0146]
基于所述字形索引,获得所述待解密文字在所述目标网页中的明码。
[0147]
由于上述计算机可读存储介质解决问题的原理与数据处理方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施1-3,重复之处不再赘述。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1