CN108449316A - 一种反爬虫方法、服务器和客户端 - Google Patents
一种反爬虫方法、服务器和客户端 Download PDFInfo
- Publication number
- CN108449316A CN108449316A CN201810118999.8A CN201810118999A CN108449316A CN 108449316 A CN108449316 A CN 108449316A CN 201810118999 A CN201810118999 A CN 201810118999A CN 108449316 A CN108449316 A CN 108449316A
- Authority
- CN
- China
- Prior art keywords
- order
- data
- initial data
- client
- mark
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种反爬虫方法、服务器和客户端,所述方法包括:在服务器中,根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据,以及确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据所对应的原始数据,从而既能够避免原始数据的泄漏,又不影响用户的正常浏览,有效提高了网站安全性能。
Description
技术领域
本申请涉及信息安全技术领域,尤其涉及一种反爬虫方法、服务器和客户端。
背景技术
网络爬虫(简称爬虫),是一种通过网页的链接地址寻找网页,并按照一定的规则,自动获取网页内容的程序。
目前的爬虫技术已经很普遍,通过设定的规则,爬虫可以轻易地抓取网页源码中一些重要信息,例如,商品价格、商家电话号码、商品评分或商品关键参数等,造成网站信息泄漏,降低网站安全性能。
发明内容
本申请实施例提供一种反爬虫方法、服务器和客户端,用以解决现有的爬虫爬取造成的网站信息泄漏问题。
本申请实施例提供了一种反爬虫方法,所述方法应用于服务器,所述方法包括:
根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据;
确定与所述预设乱序规则对应的乱序标识,其中,所述乱序标识用于在客户端进行网页展示时将所述乱序数据转换为所述原始数据;
根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码;
在接收到所述客户端发送的网页访问请求后,向所述客户端返回所述网页源码,以供所述客户端展示所述原始数据。
可选地,在根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据之前,所述方法还包括:
根据所述原始数据,随机生成所述预设乱序规则;
确定与所述预设乱序规则对应的乱序标识,包括:
确定所述预设乱序规则对应的哈希值;
将所述哈希值确定为所述乱序标识。
可选地,根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码,包括:
将所述乱序标识确定为与所述乱序数据对应的标签的属性值。
本申请实施例还提供一种反爬虫方法,所述方法应用于客户端,所述方法包括:
向服务器发送用于访问目标网页的网页访问请求;
接收所述服务器返回的与所述目标网页对应的网页源码;
根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,其中,所述乱序数据是在所述服务器中对所述原始数据进行乱序处理之后得到的;
根据所述原始数据,生成所述目标网页。
可选地,根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,包括:
将所述乱序数据对应的标签的属性值,确定为与所述乱序数据对应的乱序标识。
根据所述乱序标识,从服务器获取与所述乱序标识对应的预设乱序规则;
根据所述预设乱序规则,将所述乱序数据转换为所述原始数据。
本申请实施例还提供一种服务器,包括:
乱序模块,用于根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据;
确定模块,用于确定与所述预设乱序规则对应的乱序标识,其中,所述乱序标识用于在客户端进行网页展示时将所述乱序剧转换为所述原始数据;
生成模块,用于根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码;
发送模块,用于在接收到所述客户端发送的网页访问请求后,向所述客户端返回所述网页源码,以供所述客户端展示所述原始数据。
可选地,所述服务器还包括:
随机生成模块,用于根据所述原始数据,随机生成所述预设乱序规则;
所述确定模块具体用于:
确定所述预设乱序规则对应的哈希值;
将所述哈希值确定为所述乱序标识。
可选地,所述生成模块具体用于:
将所述乱序标识确定为与所述乱序数据对应的标签的属性值。
本申请实施例还提供一种客户端,包括:
发送模块,用于向服务器发送用于访问目标网页的网页访问请求;
接收模块,用于接收所述服务器返回的与所述目标网页对应的网页源码;
确定模块,用于根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,其中,所述乱序数据是在所述服务器中对所述原始数据进行乱序处理之后得到的;
生成模块,用于根据所述原始数据,生成所述目标网页。
可选地,所述确定模块具体用于:
将所述乱序数据对应的标签的属性值,确定为与所述乱序数据对应的乱序标识;
根据所述乱序标识,从服务器获取与所述乱序标识对应的预设乱序规则;
根据所述预设乱序规则,将所述乱序数据转换为所述原始数据。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在服务器中,根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据,以及确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据所对应的原始数据,从而既能够避免原始数据的泄漏,又不影响用户的正常浏览,有效提高了网站安全性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种反爬虫方法的流程示意图;
图2为本申请实施例提供的另一种反爬虫方法的流程示意图;
图3为本申请实施例提供的一种电子设备的结构示意图;
图4为本申请实施例提供的一种服务器的结构示意图;
图5为本申请实施例提供的另一种电子设备的结构示意图;
图6为本申请实施例提供的一种客户端的结构示意图。
具体实施方式
为了实现本申请的目的,本申请实施例提供了一种反爬虫方法、服务器和客户端,所述方法包括:在服务器中,根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据,以及确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据所对应的原始数据,从而既能够避免原始数据的泄漏,又不影响用户的正常浏览,有效提高了网站安全性能。
下面结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
图1为本申请实施例提供的一种反爬虫方法的流程示意图。所述方法应用于服务器,所述方法可以如下所示。
步骤102:根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据。
步骤104:确定与预设乱序规则对应的乱序标识。
其中,乱序标识用于在客户端进行网页展示时将所述乱序数据转换为所述原始数据
本申请实施例中,在根据预设乱序规则,对原始数据进行乱序处理,得到与该原始数据对应的乱序数据之前,还包括:
根据原始数据,随机生成预设乱序规则;
针对构成网页的某一原始数据,随机生成预设乱序规则,进而根据该预设乱序规则,对该原始数据进行乱序处理,得到该原始数据对应的乱序数据。
确定对原始数据进行乱序处理的预设乱序规则对应的的乱序标识,使得后续在客户端进行网页展示时,可以根据该乱序标识,将乱序数据转换为原始数据,确保不影响用户正常浏览网页内容。
例如,针对构成网页的某一原始数值数据“423”,随机生成预设乱序规则“423乱序为687”,进而根据该预设乱序规则对该原始数值数据“423”进行乱序处理,得到与该原始数值数据“423”对应的乱序数值数据“687”。
由于数值数据中都包括“0123456789”,因此针对原始数值数据,可以随机生成数值数据“0123456789”的预设乱序规则。由于数值数据“0123456789”可以产生3628800种预设乱序规则,有效提高乱序数据被破解的难度。
例如,针对构成网页的某一原始数值数据“258”,随机生成预设乱序规则“0123456789乱序为0987654321”,进而根据该预设乱序规则对该原始数值数据“247”进行乱序处理,得到与该原始数值数据“247”对应的乱序数值数据“853”。
除了可以对原始数值数据进行乱序之外,还可以对原始文字数据进行乱序处理。
例如,针对构成网页的某一原始文字数据“用户评论为优”,随机生成预设乱序规则“‘用户评论为优’乱序为‘论为户评用优’”,进而根据该预设乱序规则对该原始文字数据“用户评论为优”进行乱序处理,得到与该原始文字数据“用户评论为优”对应的乱序文字数据“论为户评用优”。
在根据随机生成的预设乱序规则对原始数据进行乱序处理之后,确定与预设乱序规则对应的乱序标识。
本申请实施例中,确定与预设乱序规则对应的乱序标识,包括:
确定预设乱序规则对应的哈希值;
将该哈希值确定为乱序标识。
例如,随机生成的预设乱序规则“0123456789乱序为0987654321”,确定“0987654321”的哈希值,进而将该哈希值确定为预设乱序规则“0123456789乱序为0987654321”的乱序标识。
步骤106:根据乱序数据和乱序标识,生成与乱序数据对应的网页源码。
针对构成网页的某一原始数据,根据预设乱序规则将该原始数据进行乱序得到乱序数据,以及确定与该预设乱序规则对应的乱序标识之后,可以根据该乱序数据和该乱序标识,生成与该原始数据对应的网页源码。
本申请实施例中,根据乱序数据和乱序标识,生成与该乱序数据对应的网页源码,包括:
将乱序标识确定为与乱序数据对应的标签的属性值。
例如,在确定原始数据“231”对应的乱序数据为“768”,以及乱序标识之后,得到乱序数据“768”对应的网页源码为“<span class='乱序标识'>768</span>”。
针对构成某一网页的多个或全部原始数据,执行上述步骤102~108,得到包括构成该网页的多个或全部原始数据乱序之后得到的乱序数据对应的网页源码,进而得到该网页对应的网页源码。
需要说明的是,目标网页的网页源码中可以包括构成目标网页的所有原始数据乱序之后得到的乱序数据对应的网页源码;可以包括构成目标网页的某些关键数据乱序之后得到的乱序数据对应的网页源码;还可以包括构成目标网页的所有原始数据中预设比例的原始数据乱序之后得到的乱序数据对应的网页源码,这里不做具体限定。
步骤108:在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据。
在接收到客户端发送的网页请求之后,服务器向该客户端返回需要访问的目标网页的网页源码,该目标网页的网页源码中包括构成该目标网页的原始数据乱序之后得到的乱序数据对应的网页源码。
通过对构成网页的原始数据进行乱序之后得到乱序数据,以及确定乱序数据对应的网页源码,使得客户端展示目标网页时,若该目标网页的网页源码被爬虫爬取,爬虫爬取到的为乱序数据,从而实现了对原始数据的保护。
本申请实施例的技术方案,在服务器中,根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据,以及确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据,使得在客户端被爬虫爬取时,爬虫爬取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据所对应的原始数据,从而既能够避免原始数据的泄漏,又不影响用户的正常浏览,有效提高了网站安全性能。
实施例2
在与服务器相对的客户端,为了使得可以正常访问网页,在对从服务器获取的网页源码进行网页渲染时,需要将网页源码中包含的乱序数据转换为原始数据,才能得到目标网页,供用户正常浏览。
图2为本申请实施例提供的另一种反爬虫方法的流程示意图。所述方法应用于客户端,所述方法可以下所示。
步骤201:向服务器发送用于访问目标网页的网页访问请求。
步骤202:接收服务器返回的与目标网页对应的网页源码。
客户端想要访问目标网页时,可以根据该目标网页的链接地址,向服务器发送用于访问该目标网页的网页访问请求。服务器在接收到网页访问请求之后,向客户端返回该目标网页的网页源码。
其中,目标网页的网页源码中包括构成目标网页的所有原始数据中全部或预设比例的原始数据乱序之后得到的乱序数据对应的网页源码。
步骤204:根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据。
其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的。
客户端接收到服务器返回的目标网页对应的网页源码之后,客户端根据网页源码中的层叠样式表CSS对网页源码中的数据进行渲染显示。
客户端根据网页源码中的层叠样式表CSS对网页源码中的数据进行渲染显示时,针对某一乱序数据对应的网页源码,通过解析网页源码中的CSS,确定该乱序数据对应的原始数据。
本申请实施例中,确定网页源码中的乱序数据对应的原始数据,包括:
将乱序数据对应的标签的属性值,确定为与乱序数据对应的乱序标识;
根据该乱序标识,从服务器获取与该乱序标识对应的预设乱序规则;
根据该预设乱序规则,将乱序数据转换为原始数据。
例如,乱序数据“768”对应的网页源码为“<span class='乱序标识'>768</span>”,进而根据标签的属性值可以确定该乱序标识,进而根据该乱序标识,可以从服务器获取与该乱序标识标识对应的预设乱序规则为“231乱序为768”,进而根据该预设乱序规则,将乱序数据“768”转换为原始数据为“231”。
针对目标网页对应的网页源码中的所有乱序数据,采用上述方法确定其对应的原始数据。
步骤206:根据原始数据,生成目标网页。
在确定目标网页对应的网页源码中的所有乱序数据对应的原始数据之后,根据原始数据,渲染显示得到目标网页,使得客户端可以显示的目标网页中的数据为正确的原始数据,确定正常用户对目标网页的正常浏览访问。
本申请实施例的技术方案,在客户端,向服务器发送用于访问目标网页的网页访问请求;接收服务器返回的与目标网页对应的网页源码;根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据,其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的;根据原始数据,生成目标网页,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据对应的原始数据,从而既能够避免原始数据的泄露,又不影响用户的正常浏览,有效提高了网站的安全性能。
实施例3
图3为本申请实施例提供的一种电子设备的结构示意图。如图3所示,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成服务器。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据;
确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;
根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;
在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据。
上述如本申请实施例1执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1执行的方法,并实现上述实施例1的功能,本申请实施例在此不再赘述。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中的目标图形码识别方法,并具体用于执行:
根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据;
确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;
根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;
在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据。
图4为本申请实施例提供的一种服务器的结构示意图。图4所示的服务器400包括:
乱序模块401,用于根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据;
确定模块402,用于确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序剧转换为原始数据;
生成模块403,用于根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;
发送模块404,用于在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据。
可选地,服务器400还包括:
随机生成模块,用于根据原始数据,随机生成预设乱序规则;
确定模块402具体用于:
确定预设乱序规则对应的哈希值;
将哈希值确定为乱序标识。
可选地,生成模块403具体用于:
将乱序标识确定为与乱序数据对应的标签的属性值。
根据服务器,乱序模块用于根据预设乱序规则,对原始数据进行乱序处理,得到与原始数据对应的乱序数据;确定模块用于确定与预设乱序规则对应的乱序标识,其中,乱序标识用于在客户端进行网页展示时将乱序数据转换为原始数据;生成模块用于根据乱序数据和乱序标识,生成与乱序数据对应的网页源码;发送模块用于在接收到客户端发送的网页访问请求后,向客户端返回网页源码,以供客户端展示原始数据,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据所对应的原始数据,从而既能够避免原始数据的泄漏,又不影响用户的正常浏览,有效提高了网站安全性能。
实施例4
图5为本申请实施例提供的另一种电子设备的结构示意图。如图5所示,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成客户端。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
向服务器发送用于访问目标网页的网页访问请求;
接收服务器返回的与目标网页对应的网页源码;
根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据,其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的;
根据原始数据,生成目标网页。
上述如本申请实施例2执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图2执行的方法,并实现上述实施例2的功能,本申请实施例在此不再赘述。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中的目标图形码识别方法,并具体用于执行:
向服务器发送用于访问目标网页的网页访问请求;
接收服务器返回的与目标网页对应的网页源码;
根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据,其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的;
根据原始数据,生成目标网页。
图6为本申请实施例提供的一种客户端的机构示意图。图6所示的客户端600包括:
发送模块601,用于向服务器发送用于访问目标网页的网页访问请求;
接收模块602,用于接收服务器返回的与目标网页对应的网页源码;
确定模块603,用于根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据,其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的;
生成模块604,用于根据原始数据,生成目标网页。
可选地,确定模块603具体用于:
将乱序数据对应的标签的属性值,确定为与乱序数据对应的乱序标识;
根据乱序标识,从服务器获取与乱序标识对应的预设乱序规则;
根据预设乱序规则,将乱序数据转换为原始数据。
根据客户端,发送模块用于向服务器发送用于访问目标网页的网页访问请求;接收模块用于接收服务器返回的与目标网页对应的网页源码;确定模块用于根据网页源码中与乱序数据对应的乱序标识,将乱序数据转换为原始数据,其中,乱序数据是在服务器中对原始数据进行乱序处理之后得到的;生成模块用于根据原始数据,生成目标网页,使得在客户端被爬虫爬取时,爬虫获取到的网页源码中为乱序数据,而客户端展示给用户的为乱序数据对应的原始数据,从而既能够避免原始数据的泄露,又不影响用户的正常浏览,有效提高了网站的安全性能。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种反爬虫方法,其特征在于,所述方法应用于服务器,所述方法包括:
根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据;
确定与所述预设乱序规则对应的乱序标识,其中,所述乱序标识用于在客户端进行网页展示时将所述乱序数据转换为所述原始数据;
根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码;
在接收到所述客户端发送的网页访问请求后,向所述客户端返回所述网页源码,以供所述客户端展示所述原始数据。
2.如权利要求1所述的方法,其特征在于,在根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据之前,所述方法还包括:
根据所述原始数据,随机生成所述预设乱序规则;
确定与所述预设乱序规则对应的乱序标识,包括:
确定所述预设乱序规则对应的哈希值;
将所述哈希值确定为所述乱序标识。
3.如权利要求2所述的方法,其特征在于,根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码,包括:
将所述乱序标识确定为与所述乱序数据对应的标签的属性值。
4.一种反爬虫方法,其特征在于,所述方法应用于客户端,所述方法包括:
向服务器发送用于访问目标网页的网页访问请求;
接收所述服务器返回的与所述目标网页对应的网页源码;
根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,其中,所述乱序数据是在所述服务器中对所述原始数据进行乱序处理之后得到的;
根据所述原始数据,生成所述目标网页。
5.如权利要求4所述的方法,其特征在于,根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,包括:
将所述乱序数据对应的标签的属性值,确定为与所述乱序数据对应的乱序标识;
根据所述乱序标识,从服务器获取与所述乱序标识对应的预设乱序规则;
根据所述预设乱序规则,将所述乱序数据转换为所述原始数据。
6.一种服务器,其特征在于,包括:
乱序模块,用于根据预设乱序规则,对原始数据进行乱序处理,得到与所述原始数据对应的乱序数据;
确定模块,用于确定与所述预设乱序规则对应的乱序标识,其中,所述乱序标识用于在客户端进行网页展示时将所述乱序数据转换为所述原始数据;
生成模块,用于根据所述乱序数据和所述乱序标识,生成与所述乱序数据对应的网页源码;
发送模块,用于在接收到所述客户端发送的网页访问请求后,向所述客户端返回所述网页源码,以供所述客户端展示所述原始数据。
7.如权利要求6所述的服务器,其特征在于,所述服务器还包括:
随机生成模块,用于根据所述原始数据,随机生成所述预设乱序规则;
所述确定模块具体用于:
确定所述预设乱序规则对应的哈希值;
将所述哈希值确定为所述乱序标识。
8.如权利要求7所述的服务器,其特征在于,所述生成模块具体用于:
将所述乱序标识确定为与所述乱序数据对应的标签的属性值。
9.一种客户端,其特征在于,包括:
发送模块,用于向服务器发送用于访问目标网页的网页访问请求;
接收模块,用于接收所述服务器返回的与所述目标网页对应的网页源码;
确定模块,用于根据所述网页源码中与乱序数据对应的乱序标识,将所述乱序数据转换为原始数据,其中,所述乱序数据是在所述服务器中对所述原始数据进行乱序处理之后得到的;
生成模块,用于根据所述原始数据,生成所述目标网页。
10.如权利要求9所述的客户端,其特征在于,所述确定模块具体用于:
将所述乱序数据对应的标签的属性值,确定为与所述乱序数据对应的乱序标识;
根据所述乱序标识,从服务器获取与所述乱序标识对应的预设乱序规则;
根据所述预设乱序规则,将所述乱序数据转换为所述原始数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810118999.8A CN108449316B (zh) | 2018-02-06 | 2018-02-06 | 一种反爬虫方法、服务器和客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810118999.8A CN108449316B (zh) | 2018-02-06 | 2018-02-06 | 一种反爬虫方法、服务器和客户端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108449316A true CN108449316A (zh) | 2018-08-24 |
CN108449316B CN108449316B (zh) | 2020-07-03 |
Family
ID=63191981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810118999.8A Active CN108449316B (zh) | 2018-02-06 | 2018-02-06 | 一种反爬虫方法、服务器和客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108449316B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274664A (zh) * | 2018-09-12 | 2019-01-25 | 珠海天燕科技有限公司 | 一种反爬虫方法和装置 |
CN109492146A (zh) * | 2018-11-09 | 2019-03-19 | 杭州安恒信息技术股份有限公司 | 一种防web爬虫的方法和装置 |
CN110166465A (zh) * | 2019-05-27 | 2019-08-23 | 北京达佳互联信息技术有限公司 | 访问请求的处理方法、装置、服务器及存储介质 |
CN110414221A (zh) * | 2019-07-11 | 2019-11-05 | 东软集团股份有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN110851682A (zh) * | 2019-10-17 | 2020-02-28 | 上海易点时空网络有限公司 | 文本反爬虫方法、服务器、显示终端 |
CN111314351A (zh) * | 2020-02-19 | 2020-06-19 | 望海康信(北京)科技股份公司 | 反爬虫的数据处理方法、装置、电子设备及存储介质 |
CN112182603A (zh) * | 2020-09-22 | 2021-01-05 | 建信金融科技有限责任公司 | 反爬虫方法和装置 |
CN112565245A (zh) * | 2020-12-02 | 2021-03-26 | 深圳市汇顶科技股份有限公司 | 数据传输方法、产线端工具、芯片、服务器及存储介质 |
WO2021212378A1 (zh) * | 2020-04-22 | 2021-10-28 | 深圳市汇顶科技股份有限公司 | 数据处理方法、装置、研发端工具及产线端工具 |
WO2022134776A1 (zh) * | 2020-12-22 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 基于标签的反爬虫方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938170B1 (en) * | 2000-07-17 | 2005-08-30 | International Business Machines Corporation | System and method for preventing automated crawler access to web-based data sources using a dynamic data transcoding scheme |
CN1967553A (zh) * | 2005-11-17 | 2007-05-23 | 翁仁滉 | 网页加密的方法与系统 |
CN101635622A (zh) * | 2008-07-24 | 2010-01-27 | 阿里巴巴集团控股有限公司 | 一种网页加密和解密的方法、系统及设备 |
CN105577684A (zh) * | 2016-01-25 | 2016-05-11 | 北京京东尚科信息技术有限公司 | 防爬虫抓取的方法、服务端、客户端和系统 |
CN110083751A (zh) * | 2019-03-18 | 2019-08-02 | 平安科技(深圳)有限公司 | 网页数据防爬虫抓取方法及装置、存储介质、电子设备 |
-
2018
- 2018-02-06 CN CN201810118999.8A patent/CN108449316B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938170B1 (en) * | 2000-07-17 | 2005-08-30 | International Business Machines Corporation | System and method for preventing automated crawler access to web-based data sources using a dynamic data transcoding scheme |
CN1967553A (zh) * | 2005-11-17 | 2007-05-23 | 翁仁滉 | 网页加密的方法与系统 |
CN101635622A (zh) * | 2008-07-24 | 2010-01-27 | 阿里巴巴集团控股有限公司 | 一种网页加密和解密的方法、系统及设备 |
CN105577684A (zh) * | 2016-01-25 | 2016-05-11 | 北京京东尚科信息技术有限公司 | 防爬虫抓取的方法、服务端、客户端和系统 |
CN110083751A (zh) * | 2019-03-18 | 2019-08-02 | 平安科技(深圳)有限公司 | 网页数据防爬虫抓取方法及装置、存储介质、电子设备 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274664A (zh) * | 2018-09-12 | 2019-01-25 | 珠海天燕科技有限公司 | 一种反爬虫方法和装置 |
CN109492146A (zh) * | 2018-11-09 | 2019-03-19 | 杭州安恒信息技术股份有限公司 | 一种防web爬虫的方法和装置 |
CN110166465A (zh) * | 2019-05-27 | 2019-08-23 | 北京达佳互联信息技术有限公司 | 访问请求的处理方法、装置、服务器及存储介质 |
CN110166465B (zh) * | 2019-05-27 | 2022-01-25 | 北京达佳互联信息技术有限公司 | 访问请求的处理方法、装置、服务器及存储介质 |
CN110414221A (zh) * | 2019-07-11 | 2019-11-05 | 东软集团股份有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN110851682A (zh) * | 2019-10-17 | 2020-02-28 | 上海易点时空网络有限公司 | 文本反爬虫方法、服务器、显示终端 |
CN111314351A (zh) * | 2020-02-19 | 2020-06-19 | 望海康信(北京)科技股份公司 | 反爬虫的数据处理方法、装置、电子设备及存储介质 |
WO2021212378A1 (zh) * | 2020-04-22 | 2021-10-28 | 深圳市汇顶科技股份有限公司 | 数据处理方法、装置、研发端工具及产线端工具 |
CN112182603A (zh) * | 2020-09-22 | 2021-01-05 | 建信金融科技有限责任公司 | 反爬虫方法和装置 |
CN112182603B (zh) * | 2020-09-22 | 2022-12-13 | 中国建设银行股份有限公司 | 反爬虫方法和装置 |
CN112565245A (zh) * | 2020-12-02 | 2021-03-26 | 深圳市汇顶科技股份有限公司 | 数据传输方法、产线端工具、芯片、服务器及存储介质 |
WO2022134776A1 (zh) * | 2020-12-22 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 基于标签的反爬虫方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108449316B (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108449316A (zh) | 一种反爬虫方法、服务器和客户端 | |
CN108427731B (zh) | 页面代码的处理方法、装置、终端设备及介质 | |
CN108363602A (zh) | 智能ui界面布局方法、装置、终端设备及存储介质 | |
CN113364753B (zh) | 反爬虫方法、装置、电子设备及计算机可读存储介质 | |
US10063659B2 (en) | Monetizing downloadable files based on resolving custodianship thereof to referring publisher and presentation of monetized content in a modal overlay contemporaneously with download | |
CN110781372B (zh) | 一种优化网站的方法、装置、计算机设备及存储介质 | |
US11037190B2 (en) | Web page performance improvement system | |
CN103020207A (zh) | 浏览器标签页分组管理方法及装置 | |
CN109241733A (zh) | 基于Web访问日志的爬虫行为识别方法及装置 | |
CN105488125A (zh) | 页面访问方法和装置 | |
CN110007916A (zh) | 业务系统的界面渲染方法、装置和服务器 | |
CN105100242A (zh) | 一种数据处理方法和系统 | |
CN109271564A (zh) | 保单查询方法及设备 | |
CN110460686B (zh) | 一种区块链地址注册方法和装置 | |
CN110058992B (zh) | 一种文案模板效果反馈方法、装置及电子设备 | |
CN109302493B (zh) | 一种用户信息共享方法、装置、电子设备及存储介质 | |
CN110908657A (zh) | 一种产品生成方法及装置 | |
CN109472650A (zh) | 海报分享后访问量的追踪方法、装置及可读存储介质 | |
CN111767053A (zh) | 一种前端页面数据获取方法及装置 | |
CN110348988A (zh) | 仲裁处理方法、电子装置及计算机可读存储介质 | |
US20210056561A1 (en) | Method and system for identifying electronic devices of genuine customers of organizations | |
CN113722321A (zh) | 数据导出方法、装置和电子设备 | |
CN107612921A (zh) | 一种基于点击位置的身份验证方法和装置 | |
CN112711932B (zh) | 基于排版引擎实现的书籍呈现方法、计算设备及存储介质 | |
CN116304458B (zh) | 一种web页面实时通知更新方法、装置、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |