[发明专利]一种应用服务器的爬虫检测方法和识别网络模型在审
申请号: | 202110003244.5 | 申请日: | 2021-01-04 |
公开(公告)号: | CN112699290A | 公开(公告)日: | 2021-04-23 |
发明(设计)人: | 王勇科;杨亮;刘国宏 | 申请(专利权)人: | 成都瑞小博科技有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06N3/04;G06N3/08 |
代理公司: | 成都佳划信知识产权代理有限公司 51266 | 代理人: | 幸伟山 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用 服务器 爬虫 检测 方法 识别 网络 模型 | ||
本发明公开了一种应用服务器的爬虫检测方法,包括:根据相同的用户字段IpId和用户字段UserAgent进行分组,对任一分组对应的日志按时间先后顺序排列,以时间间隔T1进行划分,并生成对应的会话控制id;对任一会话控制id对应的日志按时间T2进行重采样,得到时序特征;采用滑动获取时序特征,并组成训练集和测试集的样本数据;对训练集的所述样本数据进行Z‑Score标准化处理,得到n个二维特征数据;根据用户字段UserAgent对二维特征数据进行标签;构建LSTM的识别网络模型,将带标签的二维特征数据输入至LSTM的识别网络模型,并结合二分类交叉熵损失函数进行训练,得到训练后的网络模型;将测试集的样本数据输入至网络模型,以检测出爬虫和非爬虫。
技术领域
本发明涉及网络技术领域,尤其是一种应用服务器的爬虫检测方法和识别网络模型。
背景技术
目前,现有技术中大部分的互联网应用采用前后端分离的方式提供用户服务,其中,前端系统展示用户界面,后端系统通过API的提供提供数据服务。对于公开应用,由于API暴露在互联网上,爬虫非常容易伪装成前端客户端,利用这些API绕开前端用户界面获取业务数据。因此,需要对现有技术中的爬虫进行检测,但是,现有技术中的爬虫识别方法通常有以下方式:
(1)后端服务器判别客户端User-Agent,Cookie,Session等特定特征来分类;该方式的缺点是这些特征非常容易伪造。
(2)后端服务检查访问来源的API使用频率;这种方式也可以简单的使用分布式代理服务绕开。
(3)使用复杂的前端代码和算法计算前端指纹,然后将指纹用指定算法加密,用于和后端服务通讯,后端解密指纹数据,用来确保API调用是由指定前端发出的;这种方式由于指纹采集算法和加密算法部署在前端,因此,也可以被逆向和模拟,另外这种方式需要前后端同时部署,增加了开发和部署难度。
因此,急需要提出一种逻辑简单、检测可靠的应用服务器的爬虫检测方法。
发明内容
针对上述问题,本发明的目的在于提供一种应用服务器的爬虫检测方法和识别网络模型,本发明采用的技术方案如下:
一种应用服务器的爬虫检测方法,包括以下步骤:
根据相同的用户字段IpId和用户字段UserAgent进行分组,对任一分组对应的日志按时间先后顺序排列,以时间间隔T1进行划分,并生成对应的会话控制id;
对任一会话控制id对应的日志按时间T2进行重采样,得到时序特征;
采用滑动获取时序特征,并组成训练集和测试集的样本数据;
对训练集的所述样本数据进行Z-Score标准化处理,得到n个二维特征数据;根据用户字段UserAgent对二维特征数据进行标签;
构建LSTM的识别网络模型,将带标签的二维特征数据输入至LSTM的识别网络模型,并结合二分类交叉熵损失函数进行训练,得到训练后的网络模型;
将测试集的样本数据输入至网络模型,以检测出爬虫和非爬虫。
进一步地,所述训练集和测试集的占比为4:1。
进一步地,所述LSTM的识别网络模型包括从前至后依次连接的输入层、LSTM网络层、四个卷积层、滤波器和输出层。
优选地,所述输入层的输入的时序窗口长度为30,且时序特征数量为22。
优选地,所述LSTM网络层的时序窗口长度为30,且时序特征数量为64。
优选地,四个所述卷积层的卷积窗口均为2、步长均为1,且四个所述卷积层的空洞卷积的膨胀率分别为2、4、8和16。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都瑞小博科技有限公司,未经成都瑞小博科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110003244.5/2.html,转载请声明来源钻瓜专利网。