CN112165475B - 反爬虫方法、装置、网站服务器和可读存储介质 - Google Patents
反爬虫方法、装置、网站服务器和可读存储介质 Download PDFInfo
- Publication number
- CN112165475B CN112165475B CN202011003501.7A CN202011003501A CN112165475B CN 112165475 B CN112165475 B CN 112165475B CN 202011003501 A CN202011003501 A CN 202011003501A CN 112165475 B CN112165475 B CN 112165475B
- Authority
- CN
- China
- Prior art keywords
- access
- access token
- token
- request
- user
- 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.)
- Active
Links
Images
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
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明的实施例提供了一种反爬虫方法、装置、网站服务器和可读存储介质,涉及互联网技术领域。本发明实施例提供的反爬虫方法、装置、网站服务器和可读存储介质,在接收用户端发送的访问请求后,判断访问令牌是否被激活,若访问令牌被激活,判断用户端的访问频率是否超过设定阈值,若超过设定阈值,将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度,如此,通过增加用户的访问成本,从根本上消除了使用恶意爬虫的动机,限制了恶意爬虫爬取事件的发生,避免了大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。
Description
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种反爬虫方法、装置、网站服务器和可读存储介质。
背景技术
爬虫程序的作用主要是从信息聚合类网站爬取大量的信息,将搬运来的数据存储在私有服务器中,用作二次开发,以实现盈利等目的。
目前,恶意爬虫的行为经常发生,大大增加了被爬取网站服务器的负载,影响了网站服务器的工作效率。
发明内容
基于上述研究,本发明提供了一种反爬虫方法、装置、网站服务器和可读存储介质,以改善上述问题。
本发明的实施例可以这样实现:
第一方面,本发明实施例提供一种反爬虫方法,应用于网站服务器,所述方法包括:
接收用户端发送的访问请求,所述访问请求包括访问令牌;
判断所述访问令牌是否被激活;其中,所述访问令牌通过签订预设协议被激活,所述预设协议中包括激活所述访问令牌的额度;
若所述访问令牌被激活,判断所述用户端的访问频率是否超过设定阈值;
若超过所述设定阈值,将所述访问令牌进行封禁,禁止所述用户端进行访问,并禁止向所述用户端返还所述额度。
在可选的实施方式中,所述方法还包括:
接收所述用户端首次登录的登录请求;所述登录请求包括所述用户端对应用户的身份信息以及登录秘钥;
对所述身份信息以及登录秘钥进行验证;
若验证通过,对所述身份信息进行加密;
根据加密后的身份信息生成所述访问令牌,并将所述访问令牌发送至所述用户端。
在可选的实施方式中,所述方法还包括:
接收所述用户端发送的令牌激活请求;
根据所述令牌激活请求,向所述用户端发送未签订的所述预设协议,其中,所述预设协议包括未处理的所述额度的订单;
若在预设时间段内接收到所述用户端发送的已签订的所述预设协议以及已完成处理的订单,则将所述用户端的访问令牌进行激活。
在可选的实施方式中,在判断所述访问令牌是否被激活之前,所述方法还包括:
判断所述访问令牌是否有效;
所述判断所述访问令牌是否有效的步骤包括:
对所述访问令牌进行解析,得到所述用户端对应用户的身份信息;
判断所述身份信息是否与预存的身份信息匹配;
若匹配,则判定所述访问令牌有效,若未匹配,则判定所述访问令牌无效。
在可选的实施方式中,所述方法还包括:
若所述访问令牌无效或未被激活,禁止所述用户端进行访问;
若所述用户端的访问频率未超过所述设定阈值,允许所述用户端进行访问。
在可选的实施方式中,在判断所述用户端的访问频率是否超过设定阈值之前,所述方法还包括:
判断所述访问令牌是否被封禁;
若所述访问令牌被封禁,禁止所述用户端进行访问;若所述访问令牌未被封禁,判断所述用户端的访问频率是否超过设定阈值。
在可选的实施方式中,所述方法还包括:
接收所述用户端发送的解绑请求;所述解绑请求包括所述用户端的访问令牌;
判断所述用户端的访问令牌是否被封禁;
若未被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,并将所述额度返还至所述用户端;
若被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,禁止向所述用户端返还所述额度。
第二方面,本发明实施例提供一种反爬虫装置,应用于网站服务器,所述反爬虫装置包括请求接收模块、令牌分析模块以及请求处理模块;
所述请求接收模块用于接收用户端发送的访问请求,所述访问请求包括访问令牌;
所述令牌分析模块用于判断所述访问令牌是否被激活,若所述访问令牌被激活,判断所述用户端的访问频率是否超过设定阈值;其中,所述访问令牌通过签订预设协议被激活,所述预设协议中包括激活所述访问令牌的额度;
若超过所述设定阈值,所述请求处理模块用于将所述访问令牌进行封禁,禁止所述用户端进行访问,并禁止向所述用户端返还所述额度。
第三方面,本发明实施例提供一种网站服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述实施方式任一项所述的反爬虫方法。
第四方面,本发明实施例提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被执行时实现前述实施方式任一项所述的反爬虫方法。
本发明实施例提供的反爬虫方法、装置、网站服务器和可读存储介质,在接收用户端发送的访问请求后,判断访问令牌是否被激活,若访问令牌被激活,判断用户端的访问频率是否超过设定阈值,若超过设定阈值,将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度,如此,通过增加用户的访问成本,在违规使用恶意爬虫程序的情况下,其付出的代价则会超过窃取数据带来的收益,进而从根本上消除了使用恶意爬虫的动机,限制了恶意爬虫爬取事件的发生,避免了大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例所提供的用户端与网站服务器的通信示意图。
图2为本发明实施例所提供的网站服务器的一种方框示意图。
图3为本发明实施例所提供的反爬虫方法的一种流程示意图。
图4为本发明实施例所提供的反爬虫方法的另一种流程示意图。
图5为本发明实施例所提供的反爬虫装置的一种方框示意图。
图标:100-网站服务器;10-反爬虫装置;11-请求接收模块;12-令牌分析模块;13-请求处理模块;20-存储器;30-处理器;40-通信单元;200-用户端;300-网络。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
爬虫程序分为良性及恶性两种。搜索引擎这类良性爬虫会根据网站提供的爬虫协议合理收录网站内容,为网站增加曝光度,是信息聚合类站点所欢迎的网络爬虫;而一些恶意爬虫会以极高的访问频率对信息进行违法窃取,给被爬取网站服务器增加大量负载。如果不限制恶意的爬取行为,则会使正常用户的访问出现响应缓慢或无响应的情况,甚至可能会造成服务器宕机。因此,反爬虫也成为互联网安全对抗中的一块主要战场。
反爬虫技术的关键就是最大限度阻断来自机器流量的访问请求,只为真实的人类用户提供服务。
目前主流的反爬虫技术手段有:①首次访问或随机要求填写图形验证码。②利用浏览器的程序执行能力验证是否为正常浏览器访问。③限制访问频率。④对标记为代理的IP地址进行封锁。⑤基于人脸识别的反爬技术。
其中,图形验证码的方式,对于简单的图形验证码,可以使用图像识别技术抽取中图像中的字母或数字,但会被机器程序轻松绕过;而对于复杂的验证码,虽然机器程序无法轻松识别,但同样也会给正常浏览的用户造成困扰,用户体验极差。
而利用浏览器的程序执行能力验证是否为正常浏览器访问的方式,通常服务器会在返回页面中嵌入一段可在浏览器中执行的JavaScript程序,浏览器将程序执行后得出的结果提交到服务端,如果结果正确则通过验证。对于低级的爬虫,这种方法十分有效;但对于高级的爬虫,同样可以利用机器执行JavaScript程序,从而绕过这种验证。
针对限制访问频率的方式,通过对单个IP地址限制频率,如果在规定的时间内该IP的访问次数超过设置的限度,会对该IP进行封禁。目前,爬虫程序可以通过使用海量代理池来频繁地切换新的IP,使得每个IP请求次数都没有达到高频的状态,从而绕过限制。
对于封锁代理IP的方式,则需要准确、完整、实时、大量地搜集全网代理IP列表,但准确性、完整性、实时性有待提高,因此会出现漏报和误报的情况。
基于人脸识别的反爬技术,这种技术虽然能识别出真人访问情况,但是会依赖摄像头等硬件设备,频繁的人脸识别请求会增加用户的访问成本,损坏用户体验。同时,利用真人照片对准摄像头等技术手段可能会绕过这种反爬虫机制。
基于上述分析可知,对于现有的反爬虫机制,爬虫程序只要一定的技术手段即可以绕过或者破解,从而爬取数据,爬虫程序爬取数据所需要的实际成本很低。
基于此,本发明实施例提供了一种反爬虫方法、装置、网站服务器和可读存储介质,通过增加用户的访问成本,在违规使用恶意爬虫程序的情况下,其付出的代价会超过窃取数据带来的收益,进而从根本上消除了使用爬虫的动机,限制了恶意爬虫爬取事件的发生,避免了大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。
请参阅图1,图1为本发明实施例所提供的网站服务器100与至少一用户端200的通信的交互示意图。所述网站服务器100可通过网络300与所述用户端200进行通信,以实现网站服务器100与用户端200之间的数据通信或交互。
在本实施例中,用户端200可以是,但不限于,智能手机、个人电脑(personalcomputer,PC)、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)等。所述网络300可以是,但不限于,有线网络或无线网络。所述用户端200的操作系统可以是,但不限于,安卓(Android)系统、IOS(iPhoneoperating system)系统、Windows phone系统、Windows系统等。所述用户端200可以通过网络从网站服务器100下载安装所需要的客户端,例如浏览器(IE浏览器、UC浏览器、360浏览器及QQ浏览器等)或其它各种应用程序。所述用户端200上安装的客户端可直接与所述网站服务器100进行数据通信和交互。
请结合参阅图2,图2为本实施例所提供的网站服务器100的一种方框示意图。如图2所示,网站服务器100包括反爬虫装置10、存储器20、处理器30以及通信单元40。
所述存储器20、处理器30以及通信单元40相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器20中存储有反爬虫装置10,所述反爬虫装置10包括至少一个可以软件或固件(firmware)的形式存储于所述存储器20中的软件功能模块,所述处理器30通过运行存储在存储器20内的软件程序以及模块,如本发明实施例中的反爬虫装置10,从而执行各种功能应用以及数据处理,即实现本发明实施例中的反爬虫方法。
其中,所述存储器20可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器20用于存储程序,所述处理器30在接收到执行指令后,执行所述程序。
所述处理器30可能是一种集成电路芯片,具有数据的处理能力。上述的处理器30可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等。可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
通信单元40用于通过网络建立网站服务器100与其他设备之间的通信连接,实现数据的收发操作。上述网络可包括无线网络或者有线网络。
可以理解,图2所示的结构仅为示意,网站服务器100还可包括比图1中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
基于图2的实现架构,请结合参阅图3,图3为本实施例所提供的反爬虫方法的一种流程示意图。该方法由图2所示的网站服务器100执行,下面对图3所示的流程图进行详细阐述。
步骤S10:接收用户端发送的访问请求。
其中,当用户需要访问网站时,则通过安装于用户端的客户端向网站服务器发起访问请求,访问请求包括该用户拥有的访问令牌。
步骤S20:判断访问令牌是否被激活。
其中,访问令牌通过签订预设协议被激活,预设协议中包括激活访问令牌的额度。
若访问令牌被激活,执行步骤S40,若访问令牌未被激活,执行步骤S30。
步骤S40:判断用户端的访问频率是否超过设定阈值。
步骤S30:禁止用户端进行访问。
若超过设定阈值,执行步骤S50,若未超过设定阈值,执行步骤S60。
步骤S50:将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度。
步骤S60:允许用户端进行访问
可选的,在本实施例中,额度可以是,但不限于,信用积分额度、保证金额度。额度的具体类型,本实施例不做限制,只需要对用户具有约束力即可。
本发明实施例提供的反爬虫方法,在接收用户端发送的访问请求后,判断访问令牌是否被激活,若访问令牌被激活,判断用户端的访问频率是否超过设定阈值,若超过设定阈值,将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度,如此,通过签订包括激活访问令牌所需要的额度的预设协议激活访问令牌,增加用户的访问成本,在违规使用恶意爬虫程序的情况下,其付出的代价则会超过窃取数据带来的收益,从而从根本上消除了使用恶意爬虫的动机,限制了恶意爬虫爬取事件的发生,避免大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。
在本实施例中,当用户首次成功登录网站时,网站服务器则会为用户发放访问令牌。因此,本实施例所提供的反爬虫方法还包括:
接收用户端首次登录的登录请求,登录请求包括用户端对应用户的身份信息以及登录秘钥。
对身份信息以及登录秘钥进行验证。
若验证通过,对身份信息进行加密。
根据加密后的身份信息生成访问令牌,并将访问令牌发送至用户端。
其中,当用户需要访问某个网站时,可以通过用户端向网站服务器发起注册请求,该注册请求包括用户的身份信息和登录秘钥,网站服务器在接收到注册请求,将注册请求中的身份信息和登录秘钥进行关联保存。在用户进行注册后,通过身份信息和登录秘钥向网站服务器发起登录请求,在网站服务器验证无问题的情况下即可登录网站。
在本实施例中,当用户完成注册后,首次登录时,网站服务器对登录请求中所包括的身份信息以及登录秘钥进行验证,并在验证通过时,对身份信息进行加密,根据加密后的身份信息生成访问令牌,然后将访问令牌发送至用户端,以使用户可根据访问令牌进行网站访问。
可选的,对身份信息的加密可以采用对称加密算法(如DES TripleDES算法、RC算法等),也可以采用非对称加密算法(RSA算法、ElGamal加密算法等),具体的加密算法,可根据实际需求而设定。
可选的,网站服务器对登录请求中所包括的身份信息以及登录秘钥进行验证的过程可以通过以下步骤实现:
在预存的身份信息中,查找是否存在与登录请求中所包括的身份信息匹配的目标身份信息。
若存在,判断目标身份信息关联的登录秘钥是否与登录请求中所包括的登录秘钥相同。
若相同,则验证通过,若预存的身份信息中未存在目标身份信息或者目标身份信息关联的登录秘钥与登录请求中所包括的登录秘钥不同,则判定验证不通过。
可以理解地,若网站服务器对用户端首次登录的登录请求验证不通过时,则无需向用户端发放访问令牌。而在使用过程中,若网站服务器对用户端登录的登录请求验证不通过时,则禁止用户访问网站。
当用户端成功登录后,若用户端对应的用户想进一步浏览网站中进行爬虫管控的内容页面,则需要对访问令牌进行激活。因此,本实施例所提供的反爬虫方法还包括:
接收用户端发送的令牌激活请求。
根据令牌激活请求,向用户端发送未签订的预设协议。
其中,预设协议包括激活访问令牌所需额度的订单。
若在预设时间段内接收到用户端发送的已签订的预设协议以及已完成处理的订单,则将用户端的访问令牌进行激活。
其中,若用户需要激活访问令牌,则向网站服务器发送令牌激活请求,而网站服务器在接收到令牌激活请求后,则向用户端发送的未签订的预设协议,该预设协议可以是与反爬虫相关的专项用户协议,也可以是自定义的协议,同时,预设协议中包括激活访问令牌所需额度的订单,该订单未处理。
当用户端接收到未签订的预设协议以及未处理的订单后,若用户需要对访问令牌进行激活,则签订预设协议,并对订单进行处理。
例如,当额度为保证金额度时,若用户需要进一步浏览网站中进行爬虫管控的内容页面,则必须签订与反爬虫相关的专项用户协议并且在线支付一定数额的保证金,从而激活访问令牌。
当网站服务器接收到签订后的预设协议以及已完成处理的订单后,则对用户的访问令牌进行激活。
由于在实际应用中,用户可能因为某个外部原因未注意到预设协议和订单,迟迟未进行处理,因此,为了提高处理效率,本实施例可以设定时间段,在预设时间段内接收到用户端发送的已签订的预设协议以及已完成处理的订单,则将访问令牌进行激活,若在预设时间段内未接收到用户端发送的已签订的预设协议以及已完成处理的订单,则对访问令牌不进行激活。
可选的,在本实施例中,在访问令牌被激活后,可以为激活的访问令牌设置激活标识,进而,网站服务器在接收到用户端发送的访问请求后,对访问请求中的访问令牌进行解析,判断访问令牌是否具有激活标识,若具有激活标识,则判定访问令牌已被激活。
可选的,在本实施例中,预设协议中还可以包括访问频率的设定阈值。在激活访问令牌后,用户端可以按照不超过设定阈值的访问频率对网站进行正常访问。
网站服务器对用户端的使用状态进行实时监控,若用户端的访问频率超过设定阈值,则将访问令牌进行封禁,禁止用户端进行访问,而被封禁的用户端,则无法进行额度退还操作,即网站服务器禁止向用户端返回额度。
而用户端的访问频率未超过设定阈值,则可以进行访问,且可以进行额度退还操作。
可选的,在本实施例中,访问频率可以根据实际需求而设定。例如,每分钟m次,每小时n次等等。需要说明的是,在判定得到访问令牌为激活状态时,用户端的访问次数进行更新,即在原有访问次数的基础加1,网站服务器根据更新后的访问次数,判定用户端的访问频率是否超过设定阈值。
本实施例所提供的反爬虫方法,通过增加用户的违规成本以限制恶意爬虫爬取事件的发生,避免了大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。并且,用户访问网站的过程中不会受到额外验证步骤(如弹出的验证码)的打断,用户体验良好。同时,用户端也不受硬件限制(如摄像头)和软件限制(如支持JavaScript执行的浏览器软件),只需要在网站服务器进行全局监控,因此可运用场景灵活且广泛。
为了提高处理的效率以及准确性,请结合参阅图4,本实施例所提供的反爬虫方法,在判断访问令牌是否被激活之前,还包括:
步骤S70:判断访问令牌是否有效。
若访问令牌有效,则判断访问令牌是否被激活,若访问令牌无效,则执行步骤S30。
可选的,判断访问令牌是否有效的步骤包括:
对访问令牌进行解析,得到用户端对应用户的身份信息。
判断身份信息是否与预存的身份信息匹配。
若匹配,则判定访问令牌有效,若未匹配,则判定访问令牌无效。
其中,通过对访问令牌进行解析,得到用户端对应用户的身份信息,若在预存的身份信息中匹配到用户端对应用户的身份信息后,则判定访问令牌有效,进而判断访问令牌是否被激活,否则,判定访问令牌无效,禁止用户端进行访问。
由于在实际应用中,会存在被封禁的访问令牌,因此,为了进一步提高处理效率以及准确性,请结合参阅图4,在判断用户端的访问频率是否超过设定阈值之前,本实施例所提供的反爬虫方法还包括:
步骤S80:判断访问令牌是否被封禁。
若访问令牌被封禁,执行步骤S30。若访问令牌未被封禁,判断用户端的访问频率是否超过设定阈值。
由于在实际应用中,用户会因为某些原因不想在继续浏览网站,在这种情况下,用户可通过用户端向网站服务器发起额度退还操作。因此,本实施例所提供的反爬虫方法还包括:
接收用户端发送的解绑请求,解绑请求包括用户端的访问令牌。
判断用户端的访问令牌是否被封禁。
若未被封禁,根据解绑请求对已签订的预设协议进行失效处理,并将额度返还至用户端。
若被封禁,根据解绑请求对已签订的预设协议进行失效处理,禁止向用户端返还额度。
其中,用户不想在继续浏览网站时,则向网站服务器发送解绑请求,网站服务器接收到解绑请求后,判断解绑请求中的访问令牌是否被封禁,若未被封禁,根据解绑请求对已签订的预设协议进行失效处理,并将额度返还至用户端,此时访问令牌为非激活状态,用户可通过再次签订预设协议以激活访问令牌。若被封禁,根据解绑请求对已签订的预设协议进行失效处理,禁止向用户端返还额度。
本实施例所提供的反爬虫方法,通过在用户与网络站点之间签订具有额度的预设协议,以此在用户和网络站点之间形成约束。用户如果想对网站站点提供的内容进行浏览,就必须在线缴纳一定数额的额度,并签订相关的用户协议。在用户浏览网站的过程中,必须严格遵守签订的用户协议。一但出现了大流量机器访问行为,被网站服务器识别为爬虫程序,用户的访问令牌就会被立即封禁,且额度将不再被退还。当普通用户的违禁成本被抬高之后,违规使用爬虫程序付出的代价就会超过窃取数据带来的收益,进而从根本上消除了使用爬虫的动机。
基于同一发明构思,请结合参阅图5,在一个实施例中,还提供了一种反爬虫装置10,应用于网站服务器,反爬虫装置10包括请求接收模块11、令牌分析模块12以及请求处理模块13。
请求接收模块11用于接收用户端发送的访问请求,访问请求包括访问令牌。
令牌分析模块12用于判断访问令牌是否被激活,若访问令牌被激活,判断用户端的访问频率是否超过设定阈值。其中,访问令牌通过签订预设协议被激活,预设协议中包括激活访问令牌的额度。
若超过设定阈值,请求处理模块13用于将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
在上述基础上,本实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被执行时实现前述实施方式任一项所述的反爬虫方法。
综上所述,本发明实施例提供的反爬虫方法、装置、网站服务器和可读存储介质,在接收用户端发送的访问请求后,判断访问令牌是否被激活,若访问令牌被激活,判断用户端的访问频率是否超过设定阈值,若超过设定阈值,将访问令牌进行封禁,禁止用户端进行访问,并禁止向用户端返还额度,如此,通过签订包括激活访问令牌所需要的额度的预设协议激活访问令牌,增加用户的访问成本,在违规使用恶意爬虫程序的情况下,其付出的代价超过窃取数据带来的收益,从而从根本上消除了使用恶意爬虫的动机,限制了恶意爬虫爬取事件的发生,避免大流量访问造成的服务器带宽资源及计算资源被耗尽的事故。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种反爬虫方法,其特征在于,应用于网站服务器,所述方法包括:
接收用户端发送的令牌激活请求;
根据所述令牌激活请求,向所述用户端发送未签订的预设协议,其中,所述预设协议包括未处理的保证金额度的订单;
若在预设时间段内接收到所述用户端发送的已签订的所述预设协议以及已完成处理的订单,则将所述用户端的访问令牌进行激活;
接收用户端发送的访问请求,所述访问请求包括访问令牌;
判断所述访问令牌是否被激活;其中,所述访问令牌通过签订预设协议被激活,所述预设协议中包括激活所述访问令牌的保证金额度;
若所述访问令牌被激活,判断所述用户端的访问频率是否超过设定阈值;
若超过所述设定阈值,将所述访问令牌进行封禁,禁止所述用户端进行访问,并禁止向所述用户端返还所述保证金额度;
接收所述用户端发送的解绑请求;所述解绑请求包括所述用户端的访问令牌;
判断所述用户端的访问令牌是否被封禁;
若未被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,并将所述保证金额度返还至所述用户端;
若被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,禁止向所述用户端返还所述保证金额度。
2.根据权利要求1所述的反爬虫方法,其特征在于,所述方法还包括:
接收所述用户端首次登录的登录请求;所述登录请求包括所述用户端对应用户的身份信息以及登录秘钥;
对所述身份信息以及登录秘钥进行验证;
若验证通过,对所述身份信息进行加密;
根据加密后的身份信息生成所述访问令牌,并将所述访问令牌发送至所述用户端。
3.根据权利要求1所述的反爬虫方法,其特征在于,在判断所述访问令牌是否被激活之前,所述方法还包括:
判断所述访问令牌是否有效;
所述判断所述访问令牌是否有效的步骤包括:
对所述访问令牌进行解析,得到所述用户端对应用户的身份信息;
判断所述身份信息是否与预存的身份信息匹配;
若匹配,则判定所述访问令牌有效,若未匹配,则判定所述访问令牌无效。
4.根据权利要求3所述的反爬虫方法,其特征在于,所述方法还包括:
若所述访问令牌无效或未被激活,禁止所述用户端进行访问;
若所述用户端的访问频率未超过所述设定阈值,允许所述用户端进行访问。
5.根据权利要求1所述的反爬虫方法,其特征在于,在判断所述用户端的访问频率是否超过设定阈值之前,所述方法还包括:
判断所述访问令牌是否被封禁;
若所述访问令牌被封禁,禁止所述用户端进行访问;若所述访问令牌未被封禁,判断所述用户端的访问频率是否超过设定阈值。
6.一种反爬虫装置,其特征在于,应用于网站服务器,所述反爬虫装置包括请求接收模块、令牌分析模块以及请求处理模块;
所述请求接收模块用于接收用户端发送的访问请求,所述访问请求包括访问令牌;
所述令牌分析模块用于判断所述访问令牌是否被激活,若所述访问令牌被激活,判断所述用户端的访问频率是否超过设定阈值;其中,所述访问令牌通过签订预设协议被激活,所述预设协议中包括激活所述访问令牌的保证金额度;
若超过所述设定阈值,所述请求处理模块用于将所述访问令牌进行封禁,禁止所述用户端进行访问,并禁止向所述用户端返还所述保证金额度;
所述请求接收模块还用于接收所述用户端发送的令牌激活请求;
所述令牌分析模块还用于根据所述令牌激活请求,向所述用户端发送未签订的所述预设协议,其中,所述预设协议包括未处理的所述保证金额度的订单;
若在预设时间段内,所述请求接收模块接收到所述用户端发送的已签订的所述预设协议以及已完成处理的订单,则所述令牌分析模块将所述用户端的访问令牌进行激活;
所述请求接收模块还用于接收所述用户端发送的解绑请求;所述解绑请求包括所述用户端的访问令牌;
所述令牌分析模块还用于判断所述用户端的访问令牌是否被封禁;若未被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,并将所述保证金额度返还至所述用户端;若被封禁,根据所述解绑请求对已签订的所述预设协议进行失效处理,禁止向所述用户端返还所述保证金额度。
7.一种网站服务器,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-5任一项所述的反爬虫方法。
8.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序被执行时实现权利要求1-5任一项所述的反爬虫方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011003501.7A CN112165475B (zh) | 2020-09-22 | 2020-09-22 | 反爬虫方法、装置、网站服务器和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011003501.7A CN112165475B (zh) | 2020-09-22 | 2020-09-22 | 反爬虫方法、装置、网站服务器和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112165475A CN112165475A (zh) | 2021-01-01 |
CN112165475B true CN112165475B (zh) | 2023-05-02 |
Family
ID=73863346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011003501.7A Active CN112165475B (zh) | 2020-09-22 | 2020-09-22 | 反爬虫方法、装置、网站服务器和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112165475B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113364753B (zh) * | 2021-05-31 | 2022-10-14 | 深圳赛安特技术服务有限公司 | 反爬虫方法、装置、电子设备及计算机可读存储介质 |
CN113609501A (zh) * | 2021-08-05 | 2021-11-05 | 广州南洋理工职业学院 | 一种基于非对称二次加密的反爬虫方法及系统 |
CN114640525A (zh) * | 2022-03-21 | 2022-06-17 | 北京从云科技有限公司 | 针对WEB服务的DDoS攻击的保护方法、装置和设备 |
CN117118743B (zh) * | 2023-10-16 | 2024-01-23 | 北京长亭科技有限公司 | 一种爬虫行为识别方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102684880A (zh) * | 2012-05-03 | 2012-09-19 | 林顺来 | 一种usb挑战应答令牌认证方法及系统 |
CN103346880A (zh) * | 2013-06-03 | 2013-10-09 | 上海众人网络安全技术有限公司 | 一种手机令牌自动回收系统及方法 |
CN109815656A (zh) * | 2018-12-11 | 2019-05-28 | 平安科技(深圳)有限公司 | 登录认证方法、装置、设备及计算机可读存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008015659A1 (en) * | 2006-08-03 | 2008-02-07 | Provost Fellows And Scholars Of The College Of The Holy And Undivided Trinity Of Queen Elizabeth Near Dublin | A network access method and system |
US20150350208A1 (en) * | 2014-05-27 | 2015-12-03 | Turgut BAYRAMKUL | Token server-based system and methodology providing user authentication and verification for online secured systems |
US10075557B2 (en) * | 2015-12-30 | 2018-09-11 | Amazon Technologies, Inc. | Service authorization handshake |
CN107426181B (zh) * | 2017-06-20 | 2019-09-17 | 竞技世界(北京)网络技术有限公司 | 恶意Web访问请求的拦截方法及装置 |
CN107483563A (zh) * | 2017-07-31 | 2017-12-15 | 九次方大数据信息集团有限公司 | 防爬虫的数据查询方法和装置以及客户端和服务器 |
EP3786870A1 (en) * | 2018-04-22 | 2021-03-03 | Paiva de Brito Sousa, Rui Adriano | Post-payment system and process for multi-use disconnected terminals |
US10911234B2 (en) * | 2018-06-22 | 2021-02-02 | Experian Information Solutions, Inc. | System and method for a token gateway environment |
CN109523709B (zh) * | 2018-10-17 | 2022-09-30 | 深圳壹账通智能科技有限公司 | 共享单车使用方法、装置、计算机设备及存储介质 |
CN109218150A (zh) * | 2018-11-05 | 2019-01-15 | 珠海格力电器股份有限公司 | 家用电器的控制方法、家用电器、计算机可读存储介质及家用电器的共享使用方法 |
CN109948026A (zh) * | 2019-03-28 | 2019-06-28 | 深信服科技股份有限公司 | 一种网页数据爬取方法、装置、设备及介质 |
CN111625854B (zh) * | 2020-05-25 | 2022-10-14 | 聚好看科技股份有限公司 | 文档加密方法、访问方法、服务器及系统 |
-
2020
- 2020-09-22 CN CN202011003501.7A patent/CN112165475B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102684880A (zh) * | 2012-05-03 | 2012-09-19 | 林顺来 | 一种usb挑战应答令牌认证方法及系统 |
CN103346880A (zh) * | 2013-06-03 | 2013-10-09 | 上海众人网络安全技术有限公司 | 一种手机令牌自动回收系统及方法 |
CN109815656A (zh) * | 2018-12-11 | 2019-05-28 | 平安科技(深圳)有限公司 | 登录认证方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
Federation Payments using SAML Tokens with Trusted Platform Modules;David J. Lutz;2007 12th IEEE Symposium on Computers and Communications;全文 * |
基于手机令牌方式的动态身份认证系统;曾伟国; 胡汉平; 王祖喜; 孔涛;计算机与数字工程(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112165475A (zh) | 2021-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112165475B (zh) | 反爬虫方法、装置、网站服务器和可读存储介质 | |
US11831642B2 (en) | Systems and methods for endpoint management | |
EP2314046B1 (en) | Credential management system and method | |
US20100175136A1 (en) | System and method for security of sensitive information through a network connection | |
CN112333198A (zh) | 安全跨域登录方法、系统及服务器 | |
US20140122343A1 (en) | Malware detection driven user authentication and transaction authorization | |
CN105447406A (zh) | 一种用于访问存储空间的方法与装置 | |
CN101897166A (zh) | 用于使用浏览器组件建立安全通信信道的系统和方法 | |
CN101340281A (zh) | 针对在网络上进行安全登录输入的方法和系统 | |
US10666656B2 (en) | Systems and methods for protecting users from malicious content | |
US20050238174A1 (en) | Method and system for secure communications over a public network | |
CN110489957B (zh) | 访问请求的管理方法和计算机存储介质 | |
KR101498120B1 (ko) | 클라우드 공인인증 시스템 및 그 방법 | |
KR100753898B1 (ko) | 안전한 금융거래에 이용가능한 일회용 비밀번호를 이용한로그인 시스템 및 방법과 상기 일회용 비밀번호 생성프로세스를 탑재한 스마트 카드 | |
CN114024682A (zh) | 跨域单点登录方法、服务设备及认证设备 | |
KR101006720B1 (ko) | 웹 페이지에서의 비밀번호 보안방법 및 이를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 | |
JP2009258816A (ja) | 課金情報管理システムおよび課金情報管理方法 | |
Memon et al. | Anti phishing for mid-range mobile phones | |
JP2003264551A (ja) | 通信端末とサーバとのセキュリティ確保方法 | |
KR20120063178A (ko) | 위치기반의 서비스 보안 시스템 및 그 방법 | |
KR101830682B1 (ko) | 카드사의 유저정보 스크래핑 방법 및 이를 위한 애플리케이션 시스템 | |
Karpushova | SECURITY OF PERSONAL DATA ON THE NETWORK | |
KR101592475B1 (ko) | 회원제 인터넷 사이트 불법 이용 방지 시스템 | |
US9900345B2 (en) | Safe input browser, operation method thereof, and computer system having the safe input browser | |
KR101440285B1 (ko) | 스마트폰 도용방지 서비스 방법 및 시스템 |
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 | ||
CP02 | Change in the address of a patent holder |
Address after: 9/F, Block C, No. 28 Tianfu Avenue North Section, Chengdu High tech Zone, China (Sichuan) Pilot Free Trade Zone, Chengdu City, Sichuan Province, 610000 Patentee after: CHENGDU KNOWNSEC INFORMATION TECHNOLOGY Co.,Ltd. Address before: 610000, 11th floor, building 2, no.219, Tianfu Third Street, Chengdu pilot Free Trade Zone, hi tech Zone, Chengdu, Sichuan Province 610000 Patentee before: CHENGDU KNOWNSEC INFORMATION TECHNOLOGY Co.,Ltd. |
|
CP02 | Change in the address of a patent holder |