识别网络爬虫以及提取网络爬虫特征的方法及装置制造方法及图纸

技术编号:20025842 阅读:19 留言:0更新日期:2019-01-06 04:41
本发明专利技术公开了识别网络爬虫以及提取网络爬虫特征的方法及装置,此方法包括:确定用户访问特征集中的子集,此子集中的访问特征的访问参数与整体业务访问特征集中的至少一访问特征的访问参数相同;根据子集与整体业务访问特征集确定出综合访问特征集;从作为训练数据的历史日志中获取样本用户的用户访问特征集和综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从合集中选择出重要访问特征集;根据重要访问特征集检测待检测用户是否为爬虫。通过本发明专利技术获得的爬虫特征具有代表性,通过有效性监控如果随时间推移出现误判则可以调整重要访问特征及相应的规则,最终达到较高的爬虫检测的精确率和召回率。

【技术实现步骤摘要】
识别网络爬虫以及提取网络爬虫特征的方法及装置
本专利技术涉及互联网
,尤其涉及识别网络爬虫以及提取网络爬虫特征的方法及装置。
技术介绍
互联网中充斥着大量的爬虫,通过使用爬虫爬取目标网站内容,造成网站内容被其他人以低成本方式获取并利用;高频爬虫也会使业务负载变高使成本增加,正常用户浏览体验变差。现有技术主要有以下几种:一,简单判断方式:如某IP请求数在指定时间窗口内达到一定阈值则判断为爬虫,这种方式非常容易产生误判;或User-agent字符串包含爬虫相关信息,而大多数爬虫会通过改变诸如User-agent进行伪装,这种方式会产生大量漏判。二,蜜罐资源:通过在页面添加一些正常浏览器浏览访问不到的资源,一旦有ip访问,过滤下头部如不是搜索引擎的蜘蛛则判断为爬虫。这种方式,如换一个业务则需要工程师重新设置蜜罐资源。三,定期日志分析:通过使用自己研发或第三方的日志分析系统,离线分析日志。这种方式实时性低,爬虫可能已经完成了大量信息的爬取工作。同时这种方式针对一种业务按照特定规则进行分析,如换一个业务或业务本身发生变化则规则需要人工调整。
技术实现思路
为了解决上述技术问题,本专利技术提供了识别网络爬虫以及提取网络爬虫特征的方法及装置。本专利技术提供的识别网络爬虫的方法,包括:步骤1,确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;步骤2,确定用户访问特征集和整体业务访问特征集;步骤3,确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特征的访问参数相同;步骤4,根据所述子集与所述整体业务访问特征集确定出综合访问特征集;步骤5,从所述作为训练数据的历史日志中获取所述样本用户的所述用户访问特征集和所述综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从所述合集中选择出重要访问特征集;步骤6,根据所述重要访问特征集检测待检测用户是否为爬虫。上述识别网络爬虫的方法还具有以下特点:所述根据所述重要访问特征集检测待检测用户是否为爬虫包括:确定非爬虫样本用户的重要访问特征对应的正常范围,或确定爬虫样本用户的重要访问特征对应的异常范围;根据待检测用户的预设时段内的历史日志计算所述重要访问特征的值,判断所述重要访问特征的值均位于所述正常范围之外或者所述异常范围之内时,确定所述待检测用户为爬虫。上述识别网络爬虫的方法还具有以下特点:根据所述子集与所述整体业务访问特征集确定出综合访问特征集包括:将访问参数的所述子集中的访问特征与所述整体业务访问特征集中的访问特征的比例作为综合访问特征。上述识别网络爬虫的方法还具有以下特点:所述根据合集中各访问特征的值从所述合集中选择出重要访问特征集包括以下选择方法中的至少一种:选择方法一,根据作为训练数据的历史日志中访问特征的值选择方差大于预设值的访问特征作为重要访问特征;选择方法二,计算作为训练数据的历史日志中访问特征的值与样本用户是否为爬虫的信息的相关性,将相关性的绝对值高于预设相关性值的访问特征作为重要访问特征;选择方法三,将作为训练数据的历史日志中所述合集作为随机森林模型的输入值将样本用户是否为爬虫的信息作为随机森林模型的目标值,对随机森林模型训练成功后获得每个访问特征的重要度,将重要度大于预设重要度的访问特征作为重要访问特征。上述识别网络爬虫的方法还具有以下特点:所述方法还包括对重要访问特征集进行验证的步骤,验证不通过时,重新选择重要访问特征集;所述对重要访问特征集进行验证的步骤包括:使用验证数据集进行爬虫预测,判断精确率和召回率是否均大于预设阈值,精确率和召回率均大于预设阈值时验证通过;或者,使用相同选择方法在验证数据集中选择出另一重要访问特征集合,验证两个重要访问特征集的特征重合度是否大于预设值。上述识别网络爬虫的方法还具有以下特点:所述方法还包括:检测是否有误判为爬虫的用户,检测到误判为爬虫的用户后,将此用户标定为非爬虫用户,将此非爬虫用户作为样本用户,重新执行步骤2至步骤5。本专利技术实施例提供的识别网络爬虫的装置,包括:用户标定模块,用于确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;第一确定模块,用于确定用户访问特征集和整体业务访问特征集;第二确定模块,用于确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特征的访问参数相同;第三确定模块,用于根据所述子集与所述整体业务访问特征集确定出综合访问特征集;选择模块,用于从所述作为训练数据的历史日志中获取所述样本用户的所述用户访问特征集和所述综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从所述合集中选择出重要访问特征集;检测模块,用于根据所述重要访问特征集检测待检测用户是否为爬虫。上述识别网络爬虫的装置还具有以下特点:所述检测模块,用于使用以下方法根据所述重要访问特征集检测待检测用户是否为爬虫:确定非爬虫样本用户的重要访问特征对应的正常范围,或确定爬虫样本用户的重要访问特征对应的异常范围;根据待检测用户的预设时段内的历史日志计算所述重要访问特征的值,判断所述重要访问特征的值均位于所述正常范围之外或者所述异常范围之内时,确定所述待检测用户为爬虫。上述识别网络爬虫的装置还具有以下特点:所述第三确定模块,用于使用以下方法根据所述子集与所述整体业务访问特征集确定出综合访问特征集;将访问参数的所述子集中的访问特征与所述整体业务访问特征集中的访问特征的比例作为综合访问特征。上述识别网络爬虫的装置还具有以下特点:所述选择模块,用于使用以下方法中的至少一种从所述样本用户的用户访问特征和业务访问特征中选择出重要访问特征集:选择方法一,根据作为训练数据的历史日志中访问特征的值选择方差大于预设值的访问特征作为重要访问特征;选择方法二,计算作为训练数据的历史日志中访问特征的值与样本用户是否为爬虫的信息的相关性,将相关性的绝对值高于预设相关性值的访问特征作为重要访问特征;选择方法三,将作为训练数据的历史日志中所述合集作为随机森林模型的输入值将样本用户是否为爬虫的信息作为随机森林模型的目标值,对随机森林模型训练成功后获得每个访问特征的重要度,将重要度大于预设重要度的访问特征作为重要访问特征。本专利技术提供的提取网络爬虫特征的方法,包括:确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;确定用户访问特征集和整体业务访问特征集;确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特征的访问参数相同;根据所述子集与所述整体业务访问特征集确定出综合访问特征集;从所述作为训练数据的历史日志中获取所述样本用户的所述用户访问特征集和所述综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从所述合集中选择出重要访问特征集。本专利技术提供的提取网络爬虫特征的装置,包括:用户标定模块,用于确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;第一确定模块,用本文档来自技高网...

【技术保护点】
1.一种识别网络爬虫的方法,其特征在于,包括:步骤1,确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;步骤2,确定用户访问特征集和整体业务访问特征集;步骤3,确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特征的访问参数相同;步骤4,根据所述子集与所述整体业务访问特征集确定出综合访问特征集;步骤5,从所述作为训练数据的历史日志中获取所述样本用户的所述用户访问特征集和所述综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从所述合集中选择出重要访问特征集;步骤6,根据所述重要访问特征集检测待检测用户是否为爬虫。

【技术特征摘要】
1.一种识别网络爬虫的方法,其特征在于,包括:步骤1,确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;步骤2,确定用户访问特征集和整体业务访问特征集;步骤3,确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特征的访问参数相同;步骤4,根据所述子集与所述整体业务访问特征集确定出综合访问特征集;步骤5,从所述作为训练数据的历史日志中获取所述样本用户的所述用户访问特征集和所述综合访问特征集的合集中各访问特征的值,根据合集中各访问特征的值从所述合集中选择出重要访问特征集;步骤6,根据所述重要访问特征集检测待检测用户是否为爬虫。2.如权利要求1所述的识别网络爬虫的方法,其特征在于,所述根据所述重要访问特征集检测待检测用户是否为爬虫包括:确定非爬虫样本用户的重要访问特征对应的正常范围,或确定爬虫样本用户的重要访问特征对应的异常范围;根据待检测用户的预设时段内的历史日志计算所述重要访问特征的值,判断所述重要访问特征的值均位于所述正常范围之外或者所述异常范围之内时,确定所述待检测用户为爬虫。3.如权利要求1所述的识别网络爬虫的方法,其特征在于,根据所述子集与所述整体业务访问特征集确定出综合访问特征集包括:将访问参数的所述子集中的访问特征与所述整体业务访问特征集中的访问特征的比例作为综合访问特征。4.如权利要求1所述的识别网络爬虫的方法,其特征在于,所述根据合集中各访问特征的值从所述合集中选择出重要访问特征集包括以下选择方法中的至少一种:选择方法一,根据作为训练数据的历史日志中访问特征的值选择方差大于预设值的访问特征作为重要访问特征;选择方法二,计算作为训练数据的历史日志中访问特征的值与样本用户是否为爬虫的信息的相关性,将相关性的绝对值高于预设相关性值的访问特征作为重要访问特征;选择方法三,将作为训练数据的历史日志中所述合集作为随机森林模型的输入值将样本用户是否为爬虫的信息作为随机森林模型的目标值,对随机森林模型训练成功后获得每个访问特征的重要度,将重要度大于预设重要度的访问特征作为重要访问特征。5.如权利要求1所述的识别网络爬虫的方法,其特征在于,所述方法还包括对重要访问特征集进行验证的步骤,验证不通过时,重新选择重要访问特征集;所述对重要访问特征集进行验证的步骤包括:使用验证数据集进行爬虫预测,判断精确率和召回率是否均大于预设阈值,精确率和召回率均大于预设阈值时验证通过;或者,使用相同选择方法在验证数据集中选择出另一重要访问特征集合,验证两个重要访问特征集的特征重合度是否大于预设值。6.如权利要求1所述的识别网络爬虫的方法,其特征在于,所述方法还包括:检测是否有误判为爬虫的用户,检测到误判为爬虫的用户后,将此用户标定为非爬虫用户,将此非爬虫用户作为样本用户,重新执行步骤2至步骤5。7.一种识别网络爬虫的装置,其特征在于,包括:用户标定模块,用于确定作为训练数据的历史日志,确定作为训练数据的历史日志中的样本用户,确定样本用户中的非爬虫样本用户和爬虫样本用户;第一确定模块,用于确定用户访问特征集和整体业务访问特征集;第二确定模块,用于确定所述用户访问特征集中的子集,此子集中的访问特征的访问参数与所述整体业务访问特征集中的至少一访问特...

【专利技术属性】
技术研发人员:刘鑫琪陈峰丛磊
申请(专利权)人:北京数安鑫云信息技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1