首页 / 专利库 / 计算机网络 / 搜索引擎 / 基于用户行为画像的爬虫拦截方法、电子设备、存储介质

基于用户行为画像的爬虫拦截方法、电子设备、存储介质

阅读:727发布:2020-05-08

专利汇可以提供基于用户行为画像的爬虫拦截方法、电子设备、存储介质专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于用户行为画像的爬虫拦截方法、 电子 设备、存储介质,其方法包括:对已知爬虫 访问 请求 进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。利用对已知爬虫访问请求分析得到的用户行为画像,可以准确的刻画爬虫访问请求的特征点。根据客户端发送的访问请问的用户行为特征,与用户行为画像进行比对,可以提高比对的准确率,避免拦截错误。进一步,在拦截时设置用户手动验证,降低拦截错误率。,下面是基于用户行为画像的爬虫拦截方法、电子设备、存储介质专利的具体信息内容。

1.一种基于用户行为画像的爬虫拦截方法,其包括:
对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像,所述用户行为画像包括页面渲染度;
接收客户端发送的对页面的访问请求,并根据所述访问请求产生的用户行为数据,得到用户行为特征;
将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求;
若是,对所述访问请求进行拦截;
其中,所述将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求包括:判断所述用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度;若是,判定所述访问请求为爬虫访问请求。
2.根据权利要求1所述的方法,其中,所述用户行为画像包括用户访问服务器频率、页面停留时长、页面访问速度、用户行为日志类型和/或用户地理位置信息。
3.根据权利要求2所述的方法,其中,所述对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像进一步包括:
获取已知爬虫访问请求所产生的用户行为数据;
根据所述用户行为数据,得到用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度和/或用于表征页面是否被渲染的信息;
获取服务器记录的所述已知爬虫访问请求产生的用户行为日志类型;
获取已知爬虫访问请求的IP地址,并根据所述IP地址得到用户地理位置范围信息;
根据所述用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型和/或用户地理位置范围信息,生成用户行为画像。
4.根据权利要求3所述的方法,其中,所述将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求包括:
判断所述用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息;若是,判定所述访问请求为爬虫访问请求。
5.根据权利要求1-4中任一项所述的方法,其中,在所述接收客户端发送的对页面的访问请求之后,所述方法还包括:
判断所述访问请求的发起方是否在预先建立的搜索引擎白名单中;
若是,不拦截所述访问请求;
若否,则执行所述根据访问请求产生的用户行为数据,得到用户行为特征的步骤。
6.根据权利要求1-4中任一项所述的方法,其中,在所述接收客户端发送的对页面的访问请求之后,所述方法还包括:
判断所述访问请求所使用的代理是否在预先建立的代理库黑名单中;
若是,则执行对所述访问请求进行拦截的步骤;
若否,则执行所述根据访问请求产生的用户行为数据,得到用户行为特征的步骤。
7.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像,所述用户行为画像包括页面渲染度;
接收客户端发送的对页面的访问请求,并根据所述访问请求产生的用户行为数据,得到用户行为特征;
将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求;
若是,对所述访问请求进行拦截;
其中,所述将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求包括:判断所述用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度;若是,判定所述访问请求为爬虫访问请求。
8.根据权利要求7所述的电子设备,所述用户行为画像包括用户访问服务器的频率、页面停留时长、页面访问速度、用户行为日志类型和/或用户地理位置信息。
9.根据权利要求8所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
获取已知爬虫访问请求所产生的用户行为数据;
根据所述用户行为数据,得到用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度和/或用于表征页面是否被渲染的信息;
获取服务器记录的所述已知爬虫访问请求产生的用户行为日志类型;
获取已知爬虫访问请求的IP地址,并根据所述IP地址得到用户地理位置范围信息;
根据所述用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型和/或用户地理位置范围信息,生成用户行为画像。
10.根据权利要求9所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
判断所述用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息;若是,判定所述访问请求为爬虫访问请求。
11.根据权利要求7-10中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
判断所述访问请求的发起方是否在预先建立的搜索引擎白名单中;
若是,不拦截所述访问请求;
若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
12.根据权利要求7-10中任一项所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
判断所述访问请求所使用的代理是否在预先建立的代理库黑名单中;
若是,则对所述访问请求进行拦截;
若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
13.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行以下操作:
对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像,所述用户行为画像包括页面渲染度;
接收客户端发送的对页面的访问请求,并根据所述访问请求产生的用户行为数据,得到用户行为特征;
将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求;
若是,对所述访问请求进行拦截;
其中,所述将所述用户行为特征与爬虫访问请求的用户行为画像进行比对,判断所述访问请求是否为爬虫访问请求包括:判断所述用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度;若是,判定所述访问请求为爬虫访问请求。
14.根据权利要求13所述的计算机存储介质,所述用户行为画像包括用户访问服务器的频率、页面停留时长、页面访问速度、用户行为日志类型和/或用户地理位置信息。
15.根据权利要求14所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
获取已知爬虫访问请求所产生的用户行为数据;
根据所述用户行为数据,得到用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度和/或用于表征页面是否被渲染的信息;
获取服务器记录的所述已知爬虫访问请求产生的用户行为日志类型;
获取已知爬虫访问请求的IP地址,并根据所述IP地址得到用户地理位置范围信息;
根据所述用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型和/或用户地理位置范围信息,生成用户行为画像。
16.根据权利要求15所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
判断所述用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致;若是,判定所述访问请求为爬虫访问请求;
和/或,判断所述用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息;若是,判定所述访问请求为爬虫访问请求。
17.根据权利要求13-16中任一项所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
判断所述访问请求的发起方是否在预先建立的搜索引擎白名单中;
若是,不拦截所述访问请求;
若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
18.根据权利要求13-16中任一项所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
判断所述访问请求所使用的代理是否在预先建立的代理库黑名单中;
若是,则对所述访问请求进行拦截;
若否,则根据访问请求产生的用户行为数据,得到用户行为特征。

说明书全文

基于用户行为画像的爬虫拦截方法、电子设备、存储介质

技术领域

[0001] 本发明涉及网络安全领域,具体涉及一种基于用户行为画像的爬虫拦截方法、电子设备、存储介质。

背景技术

[0002] 网络爬虫搜索引擎技术的基础组成部分。网络爬虫通过访问页面,从页面中抓取相关的信息,存储在搜索引擎的服务器中,提供给用户搜索结果。正常的搜索引擎使用网络爬虫时,一般通过使用http请求的UA(User-Agent,用户代理)字段来向服务器表明他们的身份。通过检查服务器的日志,使用用户代理字段可以辨认哪一个爬虫曾经访问过服务器,以及网络爬虫的访问的频率。但有些怀有恶意的网络爬虫通常不会留任何的用户代理字段内容,或者他们也会将他们的身份伪装成正常的搜索引擎。这些怀有恶意的网络爬虫会从页面中盗窃信息,给服务器造成安全威胁,并使得服务器负载过大。
[0003] 现有技术中,为了确保正常用户的访问,有些服务器采取过滤用户IP、过滤HTTP请求的特定UA(User-Agent,用户代理)等方法来拦截来自网络爬虫的访问。但这种方法没有考虑到正常用户共用IP、UA可以任意设置等问题,导致拦截网络爬虫的效率不高。

发明内容

[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于用户行为画像的爬虫拦截方法、电子设备、存储介质。
[0005] 根据本发明的一个方面,提供了一种基于用户行为画像的爬虫拦截方法,其包括:
[0006] 对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;
[0007] 接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;
[0008] 将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;
[0009] 若是,对访问请求进行拦截。
[0010] 根据本发明的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
[0011] 存储器用于存放至少一可执行指令,可执行指令使处理器执行以下操作:
[0012] 对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;
[0013] 接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;
[0014] 将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;
[0015] 若是,对访问请求进行拦截。
[0016] 根据本发明的又一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行以下操作:
[0017] 对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;
[0018] 接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;
[0019] 将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;
[0020] 若是,对访问请求进行拦截。
[0021] 根据本发明提供的基于用户行为画像的爬虫拦截方法、电子设备、存储介质,对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。利用对已知爬虫访问请求分析得到的用户行为画像,可以准确的刻画爬虫访问请求的特征点。根据客户端发送的访问请问的用户行为特征,与用户行为画像进行比对,可以提高比对的准确率,避免拦截错误。进一步,在拦截时设置用户手动验证,降低拦截错误率。
[0022] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明
[0023] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0024] 图1示出了根据本发明实施例一的基于用户行为画像的爬虫拦截方法的流程图
[0025] 图2示出了根据本发明实施例二的基于用户行为画像的爬虫拦截方法的流程图;
[0026] 图3示出了根据本发明实施例四的一种电子设备的结构示意图。

具体实施方式

[0027] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0028] 实施例一
[0029] 图1示出了根据本发明实施例一的基于用户行为画像的爬虫拦截方法的流程图,如图1所示,基于用户行为画像的爬虫拦截方法具体包括如下步骤:
[0030] 步骤S101,对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像。
[0031] 基于对确定的已知的爬虫访问请求,可以根据其在访问过程中所留下的访问痕迹、对页面所的操作、对服务器的访问等用户行为数据进行分析,通过如将大量用户行为数据进行训练、归纳总结等方式可以得到用户行为画像。其中,用户行为画像包括用户访问服务器的频率、页面停留时长、页面访问速度、页面渲染度、用户行为日志类型、用户地理位置信息等多个维度的数据。在得到用户行为画像时,具体可以通过如下方式:
[0032] 获取已知爬虫访问请求所产生的用户行为数据,由于爬虫访问请求的目的是抓取数据,其极少去主动触发页面所包含的如基于ajax实现的JavaScript代码,不会对页面进行渲染,极快地访问页面,在抓取到所需的数据后,会立刻访问下一页面,在单个页面中停留的时间较短等,而正常用户对页面访问后,会查看页面内容,对页面进行操作、页面会正常的进行渲染展示,两者所产生的用户行为数据会在不同维度产生极大的区别。根据爬虫访问的特性,通过将爬虫访问请求所产生的用户行为数据与正常用户访问请求所产生的用户行为数据进行比对,或将爬虫访问请求所产生的用户行为数据进行训练、分析,得到爬虫访问时,用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息等数据。利用这些不同维度的数据可以将爬虫访问与正常用户访问进行区分。
[0033] 具体的,用户访问服务器的频率通过计算预设时间内访问服务器的次数可以得到;用户在单页面停留的平均时长根据统计对同一页面访问时间、离开页面时间可以得到;用户访问单页面的平均速度通过计算预设时间内访问的页面个数可以得到;用于表征页面是否被渲染的信息根据浏览器对页面的渲染度、页面中JavaScript/css等相关的代码是否被浏览器渲染引擎调用等得到,由于爬虫访问页面的时间短,页面被渲染的程度极低,甚至没有被渲染。进一步,当页面被访问时,会产生相关的访问日志;当用户操作页面中如基于ajax技术由JavaScript所编写的组件、控件等,JavaScript执行相关操作时会被采集到操作执行,产生相关的操作日志;这些日志都会上传至服务器。从服务器可以获取到各个用户对页面访问时所产生的日志。正常用户会访问页面、操作页面中的组件、控件等,会产生访问日志和操作日志;爬虫访问页面时,仅产生访问日志,而不会操作页面的组件、控件等,不会产生操作日志;获取服务器记录的已知爬虫访问请求产生的日志,仅会获取到访问日志,即用户行为日志类型仅为访问日志。进一步,考虑具有爬虫技术的黑客或用户,其所在地理位置不会频繁变动。根据已知爬虫访问请求,获取真实的IP地址,根据IP地址得到用户的地理位置范围信息。通过地理位置信息,也可以确定在所在地理位置的用户有可能为使用爬虫访问的用户。
[0034] 根据以上得到的用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型、用户地理位置范围信息等数据,可以生成爬虫访问请求对应的用户行为画像。
[0035] 步骤S102,接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征。
[0036] 接收客户端发送的实时的对页面的访问请求,对该访问请求进行判断时,需要先根据访问请求所产生的用户行为数据,去取得用户行为特征。为方便后续进行比对,获取用户行为数据时,获取访问请求产生的用户访问服务器的频率、页面停留时长、页面访问速度、页面渲染度、用户行为日志、用户地理位置信息等多个维度的数据,根据多维度数据得到本次访问请求的用户行为特征。
[0037] 步骤S103,将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求。
[0038] 在比对时,可以采用如下方式进行判断:
[0039] 判断用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率,由于用户行为画像中用户访问服务器的频率已经很高,如用户行为画像中用户访问服务器的频率为5次/秒,若用户行为特征中访问服务器的频率为6次/秒,大于用户行为画像中用户访问服务器的频率,可以得知本次访问请求极大可能不是正常的用户访问请求,判定访问请求为爬虫访问请求。此处,用户行为画像中用户访问服务器的频率为大量数据的平均值,当用户行为特征中访问服务器的频率等于用户行为画像中用户访问服务器的频率,也可以认为本次访问请求极大可能不是正常的用户访问请求,判定访问请求为爬虫访问请求。
[0040] 或者,判断用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长。访问请求为爬虫访问请求时,单页面的页面停留时长一般很短,当本次访问请求用户在单页面停留时长小于或等于用户行为画像中页面停留时长时,不符合正常用户浏览页面花费时间的实际情况,认为本次访问请求极大可能不是正常的用户访问请求,判定访问请求为爬虫访问请求。
[0041] 或者,判断用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度。访问请求为爬虫访问请求时,页面访问速度会很快,爬虫会在抓取有用信息后,快速访问其他页面。当本次访问请求用户访问页面的速度大于或等于用户行为画像中页面访问速度时,正常用户可能还没有来得及浏览页面就要访问下一页面,与正常用户实际浏览页面的速度不符,认为本次访问请求极大可能不是正常的用户访问请求,判定访问请求为爬虫访问请求。
[0042] 或者,判断用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度。访问请求为爬虫访问请求时,爬虫会在抓取有用信息后,快速访问其他页面,为提高访问效率,一般不渲染页面,不执行页面中的渲染代码,页面渲染度极低。当本次访问请求页面渲染度低于或等于用户行为画像中页面渲染度时,正常用户看到的页面会及其简陋、没有美化等,这种情况与服务器希望呈现给用户的显示效果不符,认为本次访问请求极大可能不是正常的用户访问请求,判定访问请求为爬虫访问请求。
[0043] 或者,判断用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致。正常用户访问页面除产生访问日志外,对页面进行操作会相应的产生操作日志。爬虫访问请求对应的用户行为画像中用户行为日志类型仅为访问日志。根据用户行为特征产生的用户行为日志类型,可以判断,当用户行为特征所产生的用户行为日志类型与用户行为画像中用户行为日志类型一致时,即仅产生访问日志时,判定访问请求为爬虫访问请求。
[0044] 或者,判断用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息。基于地理位置信息考虑,若用户行为画像中用户地理位置信息涵盖了用户行为特征中用户地理位置信息,即在本次访问请求之前,该地理位置所发出的访问请求是爬虫访问请求,判定访问请求为爬虫访问请求。
[0045] 在判断时,可以利用以上任一方式进行判断,也可组合其中几种方式进行判断,提高判断的准确率,在此不做限定。
[0046] 若判定访问请求为爬虫访问请求,则执行步骤S104;否则,不对访问请求进行拦截,允许其继续访问。
[0047] 步骤S104,对访问请求进行拦截。
[0048] 对访问请求进行拦截时,可以获取该访问请求的IP地址、代理等信息,将其加入黑名单,使其不能在对页面进行访问;或者,还可以设置用户手动验证方式,先拦截当前访问请求,由用户在页面通过划动、填写验证码等手动方式验证其为正常用户(这种验证方式可以参考现有技术中对正常用户进行验证防止机器验证等所提及的技术手段,在此不再一一阐述),若验证其为正常用户的访问请求,可以允许其继续访问,避免错误拦截;若验证其不是正常用户的访问,其为爬虫访问请求,拦截该访问请求。
[0049] 根据本发明提供的基于用户行为画像的爬虫拦截方法,对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。利用对已知爬虫访问请求分析得到的用户行为画像,可以准确的刻画爬虫访问请求的特征点。根据客户端发送的访问请问的用户行为特征,与用户行为画像进行比对,可以提高比对的准确率,避免拦截错误。进一步,在拦截时设置用户手动验证,降低拦截错误率。
[0050] 实施例二
[0051] 图2示出了根据本发明实施例二的基于用户行为画像的爬虫拦截方法的流程图,如图2所示,基于用户行为画像的爬虫拦截方法包括如下步骤:
[0052] 步骤S201,对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像。
[0053] 本步骤参照实施例一中的步骤S101的描述,在此不再赘述。
[0054] 步骤S202,接收客户端发送的对页面的访问请求。
[0055] 步骤S203,判断访问请求的发起方是否在预先建立的搜索引擎白名单中。
[0056] 由于有些搜索引擎也会采用爬虫技术对页面进行访问,其产生的用户行为特征与用户行为画像很相符,但这些搜索引擎不是需要拦截的对象,不能根据与用户行为画像的比对结果,直接将其拦截。考虑该情况,可以根据搜索引擎本身的特征,如搜索引擎的访问请求中会标明自己的身份,携带有身份信息、真实IP地址等信息,根据这些特征,可以预先建立搜索引擎白名单。搜索引擎白名单中可以记录搜索引擎本身、其身份信息、真实IP地址等特征信息。
[0057] 根据访问请求所携带的信息,如IP地址、UA、refer等信息,对其进行分析,确定访问请求的发起方,如百度蜘蛛。当访问请求的发起方在预先建立的搜索引擎白名单中,可以执行步骤S208,不对其进行拦截。若访问请求的发起方不在预先建立的搜索引擎白名单中,不能确认其是否为爬虫访问请求,执行步骤S204,对其继续进行判断。
[0058] 步骤S204,判断访问请求所使用的代理是否在预先建立的代理库黑名单中。
[0059] 爬虫访问请求一般会隐藏自身的真实IP地址,使用代理库伪装IP地址。预先建立代理库黑名单,记录爬虫访问请求经常使用的代理库。代理库黑名单可以采用现有已公开的代理库黑名单,也可以将已经拦截的爬虫访问请求所使用的代理库更新至代理库黑名单。
[0060] 利用预先建立的代理库黑名单,判断访问请求所使用的代理是否在预先建立的代理库黑名单中,若访问请求所使用的代理在预先建立的代理库黑名单中,则可以确定访问请求为爬虫访问请求,执行步骤S207。若访问请求所使用的代理不在预先建立的代理库黑名单中,执行步骤S205,对其继续进行判断。
[0061] 步骤S205,根据访问请求产生的用户行为数据,得到用户行为特征。
[0062] 步骤S206,将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求。
[0063] 步骤S207,对访问请求进行拦截。
[0064] 以上步骤参照实施例一中步骤S102-S104的描述,在此不再赘述。
[0065] 步骤S208,不拦截访问请求。
[0066] 允许访问请求继续访问页面,不进行拦截。
[0067] 根据本发明提供的基于用户行为画像的爬虫拦截方法,除利用用户行为画像进行比对判断外,考虑现有搜索引擎也多采用爬虫技术,为防止产生误拦截,根据搜索引擎的特征,预先建立搜索引擎白名单。通过判断访问请求的发起方是否在预先建立搜索引擎白名单中,可以减少对搜索引擎的误拦截。进一步,根据预先建立的代理库黑名单,通过判断访问请求所使用的代理是否在预先建立的代理库黑名单中,可以快速有效地拦截一部分爬虫访问请求,提高拦截效率。
[0068] 实施例三
[0069] 本申请实施例三提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的基于用户行为画像的爬虫拦截方法。
[0070] 可执行指令具体可以用于使得处理器执行以下操作:
[0071] 对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。
[0072] 在一种可选的实施方式中,用户行为画像包括用户访问服务器的频率、页面停留时长、页面访问速度、页面渲染度、用户行为日志类型和/或用户地理位置信息。
[0073] 在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:获取已知爬虫访问请求所产生的用户行为数据;根据用户行为数据,得到用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度和/或用于表征页面是否被渲染的信息;获取服务器记录的已知爬虫访问请求产生的用户行为日志类型;获取已知爬虫访问请求的IP地址,并根据IP地址得到用户地理位置范围信息;根据用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型和/或用户地理位置范围信息,生成用户行为画像。
[0074] 在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:判断用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息;若是,判定访问请求为爬虫访问请求。
[0075] 在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:判断访问请求的发起方是否在预先建立的搜索引擎白名单中;若是,不拦截访问请求;若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
[0076] 在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:判断访问请求所使用的代理是否在预先建立的代理库黑名单中;若是,则对访问请求进行拦截;若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
[0077] 实施例四
[0078] 图3示出了根据本发明实施例四的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
[0079] 如图3所示,该电子设备可以包括:处理器(processor)302、通信接口(Communications Interface)304、存储器(memory)306、以及通信总线308。
[0080] 其中:
[0081] 处理器302、通信接口304、以及存储器306通过通信总线308完成相互间的通信。
[0082] 通信接口304,用于与其它设备比如客户端或其它服务器等的网元通信。
[0083] 处理器302,用于执行程序310,具体可以执行上述基于用户行为画像的爬虫拦截方法实施例中的相关步骤。
[0084] 具体地,程序310可以包括程序代码,该程序代码包括计算机操作指令。
[0085] 处理器302可能是中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。服务器包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
[0086] 存储器306,用于存放程序310。存储器306可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0087] 程序310具体可以用于使得处理器302执行以下操作:
[0088] 在一种可选的实施方式中,程序310用于使得处理器302对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。
[0089] 在一种可选的实施方式中,用户行为画像包括用户访问服务器的频率、页面停留时长、页面访问速度、页面渲染度、用户行为日志类型和/或用户地理位置信息。
[0090] 在一种可选的实施方式中,程序310用于使得处理器302获取已知爬虫访问请求所产生的用户行为数据;根据用户行为数据,得到用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度和/或用于表征页面是否被渲染的信息;获取服务器记录的已知爬虫访问请求产生的用户行为日志类型;获取已知爬虫访问请求的IP地址,并根据IP地址得到用户地理位置范围信息;根据用户访问服务器的频率、用户在单页面停留的平均时长、用户访问单页面的平均速度、用于表征页面是否被渲染的信息、用户行为日志类型和/或用户地理位置范围信息,生成用户行为画像。
[0091] 在一种可选的实施方式中,程序310用于使得处理器302判断用户行为特征中访问服务器的频率是否大于或等于用户行为画像中用户访问服务器的频率;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中用户在单页面停留时长是否小于或等于用户行为画像中页面停留时长;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中用户访问页面的速度是否大于或等于用户行为画像中页面访问速度;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征中页面渲染度低于或等于用户行为画像中页面渲染度;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为特征所产生的用户行为日志类型是否与用户行为画像中用户行为日志类型一致;若是,判定访问请求为爬虫访问请求;和/或,判断用户行为画像中用户地理位置信息是否涵盖用户行为特征中用户地理位置信息;若是,判定访问请求为爬虫访问请求。
[0092] 在一种可选的实施方式中,程序310用于使得处理器302判断访问请求的发起方是否在预先建立的搜索引擎白名单中;若是,不拦截访问请求;若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
[0093] 在一种可选的实施方式中,程序310用于使得处理器302判断访问请求所使用的代理是否在预先建立的代理库黑名单中;若是,则对访问请求进行拦截;若否,则根据访问请求产生的用户行为数据,得到用户行为特征。
[0094] 程序310中各步骤的具体实现可以参见上述基于用户行为画像的爬虫拦截实施例中的相应步骤中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
[0095] 通过本实施例提供的方案,对已知爬虫访问请求进行分析,得到已知爬虫访问请求对应的用户行为画像;接收客户端发送的对页面的访问请求,并根据访问请求产生的用户行为数据,得到用户行为特征;将用户行为特征与爬虫访问请求的用户行为画像进行比对,判断访问请求是否为爬虫访问请求;若是,对访问请求进行拦截。利用对已知爬虫访问请求分析得到的用户行为画像,可以准确的刻画爬虫访问请求的特征点。根据客户端发送的访问请问的用户行为特征,与用户行为画像进行比对,可以提高比对的准确率,避免拦截错误。进一步,在拦截时设置用户手动验证,降低拦截错误率。
[0096] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0097] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0098] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0099] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0100] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈