CN111008348A - 反爬虫方法、终端、服务器及计算机可读存储介质 - Google Patents
反爬虫方法、终端、服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111008348A CN111008348A CN201911199239.5A CN201911199239A CN111008348A CN 111008348 A CN111008348 A CN 111008348A CN 201911199239 A CN201911199239 A CN 201911199239A CN 111008348 A CN111008348 A CN 111008348A
- Authority
- CN
- China
- Prior art keywords
- font
- webpage
- server
- keyword
- webpage content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Abstract
本发明实施例公开了一种反爬虫方法、终端、服务器及计算机可读存储介质,该方法包括:将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器;向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;接收所述服务器返回的网页内容,根据预设显示策略对所述网页内容进行显示。通过上述方法,既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种反爬虫方法、终端、服务器及计算机可读存储介质。
背景技术
目前网络中存在着许多网络爬虫,网络爬虫指的是一种按照一定的规则、自动地抓取万维网信息的程序或者脚本的网络机器人,又称网页蜘蛛、网络机器人、网页追逐者等。随着互联网的发展,越来越多的公司会在网站上公开一些数据供用户浏览,但对于很多内容型的公司,数据的安全性尤其重要,所以不希望被恶意爬虫获取,以免核心数据被竞争对手获取,造成重大损失。
传统的反爬虫方法有以下几种:方法一,后台对访问进行统计,如果单个IP(互联网协议)地址访问超过阈值,对该IP地址进行封锁;方法二,后台对访问进行统计,如果单个session(会话控制)访问超过阈值,对该会话进行封锁。方法三,后台对访问进行统计,如果单个userAgent(用户代理)访问超过阈值,对该用户代理进行封锁。
上述三种方法都存在着较大的缺陷,方法一辨别度低,容易限制普通用户的正常浏览,并且,IP地址容易获取,通过封锁IP地址无法有效地实现反爬虫;方法二的session同样容易获取,因此也无法有地效实现反爬虫;方法三虽然有一定的效果,但是封锁范围过大,会导致部分普通用户的浏览受限,影响用户体验。
发明内容
本发明实施例提供一种反爬虫方法、终端、服务器及计算机可读存储介质,可以使爬虫爬取的数据失去意义,并且不影响用户的正常浏览,有效提高网站安全性能。
一种反爬虫方法,应用于终端,包括:
将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器;
向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
接收所述服务器返回的网页内容,根据预设显示策略对所述网页内容进行显示。
可选的,在其中一个实施例中,在所述将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器之前,还包括:
基于需要进行反爬虫处理的目标网页确定预设的关键字;
根据预设的字体映射规则确定与所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件;所述关键字对应至少一个字体文件;
将所述字体文件对应的关键字、字体编码存储至数据库中,在所述数据库中设定所述字体文件与对应的关键字、字体编码的映射关系。
可选的,在其中一个实施例中,所述根据预设的字体映射规则确定与所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件,包括:
通过字体库获取所述关键字对应的字体格式文件,将所述字体格式文件转换为图像格式文件;
将所述图像格式文件根据预设的字体映射规则筛选出所述关键字对应的字体编码;
根据所述关键字、字体编码生成字体文件。
可选的,在其中一个实施例中,所述根据预设显示策略对所述网页内容进行显示,包括:
基于层叠样式表的特性引入所述字体文件;
调用后端接口,将所述网页内容显示到与所述后端接口对应的文档对象模型的节点上;
将所述节点的层叠样式表中的字体属性设置为所述字体文件对应的字体库。
可选的,在其中一个实施例中,所述根据预设显示策略对所述网页内容进行显示,还包括:
通过浏览器渲染所述网页内容,将所述网页内容中的字体文件对应的关键字显示在网页页面中。
一种反爬虫方法,应用于服务器,包括:
获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件;所述关键字对应至少一个字体文件;
接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
可选的,在其中一个实施例中,所述在所述网页内容包含所述字体文件时将所述字体文件中的关键字替换为所述字体编码,包括:
判断所述网页内容中是否存在所述字体文件;
若是,则通过查询数据库中所述字体文件与关键字、字体编码的映射关系,确定对应的关键字和字体编号;
将所述网页内容中的关键字替换为所述字体编码,并将所述网页内容返回至所述终端。
一种终端,包括:
文件存储模块,用于将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器;
请求发送模块,用于向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
网页显示模块,用于在接收所述服务器返回的网页内容后,根据预设显示策略对所述网页内容进行显示。
一种服务器,包括:
文件获取模块,用于获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件;
请求接收模块,用于接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
网页发送模块,用于向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
实施本发明实施例,将具有如下有益效果:
上述反爬虫方法、终端、服务器及计算机可读存储介质,通过将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器,向服务器发送网页获取请求,指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码,接收所述服务器返回的网页内容,根据预设显示策略对所述网页内容进行显示。通过上述方法,对目标网页中的关键字数据进行处理,使得目标网页在被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且普通用户可以正常浏览网页内容,从而既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中反爬虫方法的应用环境示意图;
图2为一个实施例中反爬虫方法的流程图;
图3为另一个实施例中反爬虫方法的流程图;
图4为一个实施例中另一种反爬虫方法的流程图;
图5为一个实施例中终端的结构框图;
图6为一个实施例中服务器的结构框图;
图7为一个实施例中终端的内部结构示意图;
图8为一个实施例中服务器的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本申请。可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一应用程序称为第二应用程序,且类似地,可将第二进应用程序为第一应用程序。第一应用程序和第二应用程序两者都是应用程序,但其不是同一应用程序。
图1为一个实施例中反爬虫方法的应用环境示意图,该应用环境包括终端110和服务器120,终端110和服务器120通过网络传递数据。
终端110可以是个人电脑、平板电脑、手机、便携式智能设备等,终端110包括浏览器,可以用于显示网页页面。服务器120可以是Web服务器,也可以是云服务器、独立的物理服务器、物理服务器集群等。服务器120用于存储大量的网页、数据和信息。终端110可以向服务器120发送网页获取请求,该网页获取请求可以携带目标网页的地址信息或标识信息、终端110的身份信息和版本信息等。服务器120在接收到终端110发送的网页获取请求后,可以先与终端110建立连接,其中,包括但不限于按照TCP/IP协议与终端110建立连接;然后根据网页获取请求所携带的地址信息或标识信息,生成对应的网页内容并发送给终端110。终端110则可以显示接收到的网页内容以便用户查看。在服务器向客户端发送网页内容的过程中,爬虫可以同时获取该信息,从而造成重要数据的泄露。
本实施例的终端110通过将基于预设的关键字以及与该关键字对应的字体编码生成的字体文件存储至服务器120;向服务器120发送网页获取请求,该网页获取请求用于指示服务器120返回网页内容、并在网页内容包含所述字体文件时将该网页内容中的关键字替换为字体编码;终端110接收服务器120返回的网页内容,根据预设显示策略对所述网页内容进行显示。
通过本实施例提供的应用环境,对目标网页中的关键字数据进行处理,使得目标网页在被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且普通用户可以正常浏览网页内容,从而既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
如图2所示,为一个实施例中反爬虫方法的流程图,本实施例中的反爬虫方法,以运行于图1中的终端上为例进行描述。该反爬虫方法,包括以下步骤202~步骤206:
步骤202:将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器。
预设的关键字指的是需要防止爬虫爬取的敏感字、数字等关键数据,具体的,可以选择一些当爬虫无法采集时会改变整个语句的语义的词,如量词、否定词等,例如,汽车以XXX公里/小时在高速行驶,即将关键的量词进行处理以改变整个语句的语义,有效防止爬虫窃取重要信息。
字体编码指的是根据预设的字体映射规生成的与关键字对应的编码,例如可以通过字体映射规则网站筛选出需要的关键字,生成对应的字体编码。字体文件指的是根据关键字和对应的字体编码生成的具有特定标识的文件。
进一步的,本实施例将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器,使服务器在根据终端的网页获取请求返回网页内容时,可以根据网页内容中的关键字返回与该关键字对应的字体文件。
步骤204:向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码。
具体的,当需要通过终端浏览网页时,终端向服务器发送网页获取请求,服务器根据网页获取请求生成相应的网页内容,当网页内容中存在预设的关键字时,服务端通过封装方法随机返回与该关键字对应的字体文件,并且,服务器根据该字体文件将网页内容中的关键字替换为字体编码到返回到终端的源HTML(HyperText Markup Language,超级文本标记语言)网页中。
步骤206:接收所述服务器返回的网页内容,根据预设显示策略对所述网页内容进行显示。
终端接收服务器返回的网页内容,终端的源HTML网页引入字体文件,此时该字体文件中的关键字已经被替换为相应的字体编码,使得在目标HTML网页被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且终端根据预设显示策略对该网页内容进行显示,可以将该字体文件对应的关键字显示到网页页面中,使得用户在浏览网页时可以正常浏览网页内容。
从而本实施例提供的反爬虫方法既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
在一个实施例中,在将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器之前,也即步骤202之前,该反爬虫方法还包括以下步骤302~步骤306:
步骤302:基于需要进行反爬虫处理的目标网页确定预设的关键字。
其中,目标网页可以理解为网站中存在重要数据的页面,即目标网页中的内容一般含有敏感,核心数据,且不希望被他人恶意爬取的数据。根据目标网页确认源HTML网页。
进一步的,筛选出目标网页中需要防止爬取的敏感字,数字等关键数据作为关键字。可选的,选取的关键字数量可以为50字左右,进而在打开网页时只需渲染少量的、部分文字,而且生成的字体文件占用容量较小,不影响用户体验。
步骤304:根据预设的字体映射规则确定与所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件。
可选的,可以通过字体映射规则网站筛选出需要的关键字,生成对应的字体编码。通过字体库获取所述关键字对应的字体格式文件,将所述字体格式文件转换为图像格式文件,将所述图像格式文件根据预设的字体映射规则筛选出所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件。
举例来说,通过查找本地的微软雅黑字库信息,找到.ttf文件转换成.svg文件,再将.svg文件上传到字体映射规则网站筛选出关键字,生成与关键字对应的字体编码,然后根据关键字、与关键字对应的字体编码生成字体文件。需要说明的是,根据网站生成的字体编码有规律,可以手动修改字体编码,然后生成字体文件,保存至服务器。
需要说明的是,一个关键字对应生成至少一个字体文件,也即是说可以根据一个关键字生成多个字体文件。例如,根据关键字1分别生成字体编码a、b、c,则分别通过关键字1对应的字体编码a生成一个字体文件、通过关键字1对应的字体编码b生成一个字体文件、通过关键字1对应的字体编码c生成一个字体文件,分别将3个字体文件存储至服务器中,服务器在返回网页内容时根据关键字1随机返回一个字体文件,增加了关键字处理结果的随机性与复杂性,网络爬虫难以掌握关键字处理的规律,从而可以加大网络爬虫的难度。
步骤306:将所述字体文件对应的关键字、字体编码存储至数据库中,在所述数据库中设定所述字体文件与对应的关键字、字体编码的映射关系。
具体的,将字体文件对应的关键字、关键字编码一一存入数据库,存入数据库的规则如下:一份字体文件H中包含字A对应编码A123,字B对应编码B123,则存入数据库为2条记录A→A123→H,B→B123→H。
本实施例通过对预设的关键字进行处理,可以形成对关键信息的加密保护,防止网络爬虫获取到网络内容中的关键信息。
在一个实施例中,该反爬虫方法还包括:重复执行步骤304和步骤306,使得一个关键字可以对应生成多份字体文件保存至服务器中,服务器在返回网页内容时根据关键字随机返回一个字体文件,增加了关键字处理结果的随机性与复杂性,网络爬虫难以掌握关键字处理的规律,从而可以加大网络爬虫的难度。
在一个实施例中,该反爬虫方法中根据预设显示策略对所述网页内容进行显示的步骤,也即步骤206可以包括:
基于层叠样式表的特性引入所述字体文件;调用后端接口,将所述网页内容显示到与所述后端接口对应的文档对象模型的节点上;将所述节点的层叠样式表中的字体属性设置为所述字体文件对应的字体库。
具体的,由于CSS3(Cascading Style Sheets Level 3,层叠样式表3级)的新特性是可以自定义字体文件,在终端的源HTML网页中利用CSS3的新特性引入服务器返回的字体文件,调用后端接口,将获取到的数据显示到对应的Dom(Document Object Model,文档对象模型)节点上,Dom是处理可扩展标志语言的标准编程接口,并将对应节点的CSS类中的font-family属性设置为服务器返回的字体文件对应的字体库。
进一步的,通过浏览器渲染所述网页内容,将所述网页内容中的字体文件对应的关键字显示在网页页面中。具体的,浏览器包含渲染引擎,用于渲染窗口所展示的内容,渲染引擎可以显示html、xml文档及图片,也可以借助插件(一种浏览器扩展)显示其他类型数据,例如使用PDF阅读器插件,用于显示PDF格式。源HTML网页通过浏览器渲染,因为引入了字体文件,数据显示正常,如果通过网络爬虫,爬取的数据没有经过字体文件处理,数据中的关键字就是存入数据库的字体编码,所以获取到的是无意义的数据,因此可以达到有效的反爬虫目的。
通过本实施例提供的反爬虫方法,能够防止网站一些敏感、核心数据被爬取,不会误伤普通用户,用户通过浏览器能正常浏览网页内容,并且,针对关键字可以生产多份字体文件,随机返回,大大增加了网络爬虫的难度。
如图4所示,为一个实施例中另一种反爬虫方法的流程图,本实施例中的反爬虫方法,以运行于图1中的服务器上为例进行描述。该反爬虫方法,包括以下步骤402~步骤406:
步骤402:获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件;
具体的,服务器中获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件,其中一个关键字对应至少一个字体文件,也即是说可以根据一个关键字生成多个字体文件。服务器在返回网页内容时可以根据关键字随机返回一个字体文件,增加了关键字处理结果的随机性与复杂性,网络爬虫难以掌握关键字处理的规律,从而可以加大网络爬虫的难度。
步骤404:接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码。
具体的,当服务器接收到终端发送的网页获取请求时,根据网页获取请求生成相应的网页内容,当网页内容中存在预设的关键字时,服务端通过封装方法随机返回与该关键字对应的字体文件,并且,服务器根据该字体文件将网页内容中的关键字替换为字体编码到返回到终端的源HTML网页中。
步骤406:向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
服务器向终端发送携带字体文件的网页内容,以使得终端的源HTML网页引入字体文件,此时该字体文件中的关键字已经被替换为相应的字体编码,使得在目标HTML网页被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且终端根据预设显示策略对该网页内容进行显示,可以将该字体文件对应的关键字显示到网页页面中,使得用户在浏览网页时可以正常浏览网页内容。
本实施例提供的反爬虫方法,既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
在一个实施例中,该反爬虫方法中在所述网页内容包含所述字体文件时将所述字体文件中的关键字替换为所述字体编码的步骤,也即步骤404具体包括:
判断所述网页内容中是否存在所述字体文件;若是,则通过查询数据库中所述字体文件与关键字、字体编码的映射关系,确定对应的关键字和字体编号;将所述网页内容中的关键字替换为所述字体编码,并将所述网页内容返回至所述终端。
通过本实施例提供的反爬虫方法,对目标网页中的关键字数据进行处理,使得目标网页在被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且普通用户可以正常浏览网页内容,从而既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
应该理解的是,虽然上述附图2-4中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,附图1-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图5所示,在一个实施例中,提供了一种终端,该终端包括文件存储模块510、请求发送模块520、网页显示模块530。
文件存储模块510,用于将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器。
请求发送模块520,用于向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码。
网页显示模块530,用于在接收所述服务器返回的网页内容后,根据预设显示策略对所述网页内容进行显示。
通过本实施例提供的终端,对目标网页中的关键字数据进行处理,使得目标网页在被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且普通用户可以正常浏览网页内容,从而既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
如图6所示,在一个实施例中,提供了一种服务器,该服务器包括文件获取模块610、请求接收模块620、网页发送模块630。
文件获取模块610,用于获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件。
请求接收模块620,用于接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码。
网页发送模块630,用于向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
通过本实施例提供的服务器,对目标网页中的关键字数据进行处理,使得目标网页在被爬虫爬取时,爬虫爬取到的数据中包含了错误的关键字数据或者处理过的关键字数据,并且普通用户可以正常浏览网页内容,从而既可以使得爬虫爬取的数据失去意义,又不影响用户的正常浏览,有效提高了网站安全性能。
需要说明的是,关于终端和服务器的具体限定可以参见上文中对于反爬虫方法的限定,在此不再赘述。上述终端和服务器中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本申请实施例中提供的终端和服务器中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述的反爬虫方法的步骤。
图7为一个实施例中终端的内部结构示意图。如图7所示,该终端包括通过系统总线连接的处理器、存储器和网络接口。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器用于存储数据、程序等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于终端的反爬虫方法。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现上述各个实施例所提供的一种反爬虫方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。网络接口可以是以太网接口或无线网接口等,用于与服务器进行通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
图8为一个实施例中服务器的内部结构示意图。如图8所示,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,该处理器用于提供计算和控制能力,支撑整个服务器的运行。存储器用于存储数据、程序等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于电子设备的反爬虫方法。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现上述各个实施例所提供的一种反爬虫方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。网络接口可以是以太网接口或无线网接口等,用于与终端进行通信。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行如上述各实施例中所描述的反爬虫方法。
本申请实施例还提供了一种计算机程序产品。一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各实施例中所描述的反爬虫方法。
在上述实施例中,可以全部或部分的通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种反爬虫方法,应用于终端,其特征在于,包括:
将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器;
向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
接收所述服务器返回的网页内容,根据预设显示策略对所述网页内容进行显示。
2.根据权利要求1所述的方法,其特征在于,在所述将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器之前,还包括:
基于需要进行反爬虫处理的目标网页确定预设的关键字;
根据预设的字体映射规则确定与所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件;所述关键字对应生成至少一个字体文件;
将所述字体文件对应的关键字、字体编码存储至数据库中,在所述数据库中设定所述字体文件与对应的关键字、字体编码的映射关系。
3.根据权利要求2所述的方法,其特征在于,所述根据预设的字体映射规则确定与所述关键字对应的字体编码,根据所述关键字、字体编码生成字体文件,包括:
通过字体库获取所述关键字对应的字体格式文件,将所述字体格式文件转换为图像格式文件;
将所述图像格式文件根据预设的字体映射规则筛选出所述关键字对应的字体编码;
根据所述关键字、字体编码生成字体文件。
4.根据权利要求1所述的方法,其特征在于,所述根据预设显示策略对所述网页内容进行显示,包括:
基于层叠样式表的特性引入所述字体文件;
调用后端接口,将所述网页内容显示到与所述后端接口对应的文档对象模型的节点上;
将所述节点的层叠样式表中的字体属性设置为所述字体文件对应的字体库。
5.根据权利要求4所述的方法,其特征在于,所述根据预设显示策略对所述网页内容进行显示,还包括:
通过浏览器渲染所述网页内容,将所述网页内容中的字体文件对应的关键字显示在网页页面中。
6.一种反爬虫方法,应用于服务器,其特征在于,包括:
获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件;所述关键字对应至少一个字体文件;
接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
7.根据权利要求6所述的方法,其特征在于,所述在所述网页内容包含所述字体文件时将所述字体文件中的关键字替换为所述字体编码,包括:
判断所述网页内容中是否存在所述字体文件;
若是,则通过查询数据库中所述字体文件与关键字、字体编码的映射关系,确定对应的关键字和字体编号;
将所述网页内容中的关键字替换为所述字体编码,并将所述网页内容返回至所述终端。
8.一种终端,其特征在于,包括:
文件存储模块,用于将基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件存储至服务器;
请求发送模块,用于向所述服务器发送网页获取请求,所述网页获取请求用于指示所述服务器返回网页内容、并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
网页显示模块,用于在接收所述服务器返回的网页内容后,根据预设显示策略对所述网页内容进行显示。
9.一种服务器,其特征在于,包括:
文件获取模块,用于获取基于预设的关键字以及与所述关键字对应的字体编码生成的字体文件;
请求接收模块,用于接收终端发送的网页获取请求,根据所述网页获取请求生成网页内容,并在所述网页内容包含所述字体文件时将所述网页内容中的关键字替换为所述字体编码;
网页发送模块,用于向所述终端发送所述网页内容,以指示所述终端根据预设显示策略对所述网页内容进行显示。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911199239.5A CN111008348A (zh) | 2019-11-28 | 2019-11-28 | 反爬虫方法、终端、服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911199239.5A CN111008348A (zh) | 2019-11-28 | 2019-11-28 | 反爬虫方法、终端、服务器及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111008348A true CN111008348A (zh) | 2020-04-14 |
Family
ID=70112215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911199239.5A Pending CN111008348A (zh) | 2019-11-28 | 2019-11-28 | 反爬虫方法、终端、服务器及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111008348A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111683098A (zh) * | 2020-06-10 | 2020-09-18 | 创新奇智(成都)科技有限公司 | 反爬虫方法、装置、电子设备及存储介质 |
CN111859853A (zh) * | 2020-08-04 | 2020-10-30 | 浪潮卓数大数据产业发展有限公司 | 基于随机字体的网页文本加密与解密方法 |
CN111901332A (zh) * | 2020-07-27 | 2020-11-06 | 北京百川盈孚科技有限公司 | 网页内容反爬方法及系统 |
CN112084388A (zh) * | 2020-08-07 | 2020-12-15 | 广州力挚网络科技有限公司 | 一种数据加密方法、装置、电子设备及存储介质 |
CN112528118A (zh) * | 2020-12-17 | 2021-03-19 | 国家计算机网络与信息安全管理中心 | 基于多通道代理的数据获取方法、系统及装置 |
CN112711692A (zh) * | 2021-01-13 | 2021-04-27 | 深圳前瞻资讯股份有限公司 | 网页端数据防抓取方法、系统及智能终端 |
CN113553601A (zh) * | 2020-04-23 | 2021-10-26 | 上海云盾信息技术有限公司 | 一种网页页面内容加密方法及设备 |
CN114706826A (zh) * | 2022-06-02 | 2022-07-05 | 建信金融科技有限责任公司 | 清理文件的方法、装置、设备和计算机可读介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274664A (zh) * | 2018-09-12 | 2019-01-25 | 珠海天燕科技有限公司 | 一种反爬虫方法和装置 |
CN109543454A (zh) * | 2019-01-25 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种反爬虫方法及相关设备 |
CN109684843A (zh) * | 2018-12-25 | 2019-04-26 | 北京知道创宇信息技术有限公司 | 数据处理方法及装置 |
CN109862031A (zh) * | 2019-03-13 | 2019-06-07 | 娄奥林 | 一种对加密反爬虫的方式方法 |
CN110069688A (zh) * | 2019-03-16 | 2019-07-30 | 平安城市建设科技(深圳)有限公司 | 反爬虫的页面展示方法、服务器、存储介质及装置 |
CN110166465A (zh) * | 2019-05-27 | 2019-08-23 | 北京达佳互联信息技术有限公司 | 访问请求的处理方法、装置、服务器及存储介质 |
-
2019
- 2019-11-28 CN CN201911199239.5A patent/CN111008348A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274664A (zh) * | 2018-09-12 | 2019-01-25 | 珠海天燕科技有限公司 | 一种反爬虫方法和装置 |
CN109684843A (zh) * | 2018-12-25 | 2019-04-26 | 北京知道创宇信息技术有限公司 | 数据处理方法及装置 |
CN109543454A (zh) * | 2019-01-25 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种反爬虫方法及相关设备 |
CN109862031A (zh) * | 2019-03-13 | 2019-06-07 | 娄奥林 | 一种对加密反爬虫的方式方法 |
CN110069688A (zh) * | 2019-03-16 | 2019-07-30 | 平安城市建设科技(深圳)有限公司 | 反爬虫的页面展示方法、服务器、存储介质及装置 |
CN110166465A (zh) * | 2019-05-27 | 2019-08-23 | 北京达佳互联信息技术有限公司 | 访问请求的处理方法、装置、服务器及存储介质 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553601A (zh) * | 2020-04-23 | 2021-10-26 | 上海云盾信息技术有限公司 | 一种网页页面内容加密方法及设备 |
CN113553601B (zh) * | 2020-04-23 | 2023-04-18 | 上海云盾信息技术有限公司 | 一种网页页面内容加密方法及设备 |
CN111683098A (zh) * | 2020-06-10 | 2020-09-18 | 创新奇智(成都)科技有限公司 | 反爬虫方法、装置、电子设备及存储介质 |
CN111901332A (zh) * | 2020-07-27 | 2020-11-06 | 北京百川盈孚科技有限公司 | 网页内容反爬方法及系统 |
CN111859853A (zh) * | 2020-08-04 | 2020-10-30 | 浪潮卓数大数据产业发展有限公司 | 基于随机字体的网页文本加密与解密方法 |
CN112084388A (zh) * | 2020-08-07 | 2020-12-15 | 广州力挚网络科技有限公司 | 一种数据加密方法、装置、电子设备及存储介质 |
CN112084388B (zh) * | 2020-08-07 | 2024-04-30 | 广州力挚网络科技有限公司 | 一种数据加密方法、装置、电子设备及存储介质 |
CN112528118A (zh) * | 2020-12-17 | 2021-03-19 | 国家计算机网络与信息安全管理中心 | 基于多通道代理的数据获取方法、系统及装置 |
CN112711692A (zh) * | 2021-01-13 | 2021-04-27 | 深圳前瞻资讯股份有限公司 | 网页端数据防抓取方法、系统及智能终端 |
CN114706826A (zh) * | 2022-06-02 | 2022-07-05 | 建信金融科技有限责任公司 | 清理文件的方法、装置、设备和计算机可读介质 |
CN114706826B (zh) * | 2022-06-02 | 2022-09-27 | 建信金融科技有限责任公司 | 清理文件的方法、装置、设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111008348A (zh) | 反爬虫方法、终端、服务器及计算机可读存储介质 | |
JP7018920B2 (ja) | 機密情報処理方法、装置、及び、サーバ、ならびに、セキュリティ決定システム | |
US10567529B2 (en) | Unified tracking data management | |
US8935798B1 (en) | Automatically enabling private browsing of a web page, and applications thereof | |
CN110537180B (zh) | 用于直接浏览器内标记因特网内容中的元素的系统和方法 | |
US10515142B2 (en) | Method and apparatus for extracting webpage information | |
US7860971B2 (en) | Anti-spam tool for browser | |
CN103888490A (zh) | 一种全自动的web客户端人机识别的方法 | |
CN109474640B (zh) | 恶意爬虫检测方法、装置、电子设备及存储介质 | |
US9104664B1 (en) | Access to search results | |
CN114157568B (zh) | 一种浏览器安全访问方法、装置、设备及存储介质 | |
CN110929129B (zh) | 一种信息检测方法、设备及机器可读存储介质 | |
CN109325192B (zh) | 一种广告防屏蔽的方法和装置 | |
CN114117498A (zh) | 脱敏数据的实现方法、装置、系统、设备及存储介质 | |
CN110119483A (zh) | 多媒体文件的显示方法、装置、终端设备及存储介质 | |
CN109492146B (zh) | 一种防web爬虫的方法和装置 | |
CN111680247A (zh) | 网页字符串的本地调用方法、装置、设备及存储介质 | |
CN111177518A (zh) | 网页净化方法、系统及计算机可读存储介质 | |
CN110825976B (zh) | 网站页面的检测方法、装置、电子设备及介质 | |
CN104965926B (zh) | 网页提供方法及装置 | |
CN111143293B (zh) | 一种元数据获取方法、装置、设备及计算机可读存储介质 | |
CN113674083A (zh) | 互联网金融平台信用风险监测方法、装置及计算机系统 | |
CN112528339A (zh) | 一种基于Caché数据库的数据脱敏方法及电子设备 | |
CN108287826B (zh) | 一种基于医疗系统的病例读取方法 | |
CN112417324A (zh) | 基于Chrome的URL拦截方法、装置及计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |