一种能识别网页信息自动采集的系统与方法

文档序号:6402002阅读:748来源:国知局
专利名称:一种能识别网页信息自动采集的系统与方法
技术领域
本发明涉及网页动态解析技术领域,具体属于一种能识别网页信息自动系统与方法。
背景技术
随着互联网的发展,出现了越来越多的互联网网站,形式层出不穷,出现了新闻,博客,论坛,SNS,微博等。据CNNIC今年的最新统计,中国现已有网民4.85亿,各类站点域名130余万个。在互联网信息爆炸的今天,搜索引擎已成为人们查找互联网信息的最重要工具。搜索引擎主要通过自动爬取网站信息,并对其进行预处理,分词后,建立索引。输入检索词后,搜索引擎能够自动的为用户查找出最相关的结果。搜索引擎经过十多年的发展,技术已相对成熟,且因为有成功的商业模式可以运用,因而吸引了众多互联网厂商进入,比较著名的有百度,谷歌,搜搜,搜狗,有道,奇虎360等。另外还有一些垂直领域的搜索引擎(如旅游,机票,比价等),进入的厂商不下千家。搜索引擎的第一步也是最重要的一步是信息抓取,该步骤是搜索引擎的数据准备过程。具体过程如图1所示。URL DB存放所有待爬取的URL,URL调度模块从URL DB中选取出最重要的URL并将其放入URL下载队列,页面下载模块对该队列中的URL进行下载,下载完毕后,抽取模块对下载的页面代码进行正文和URL抽取,抽取的正文发送给索引模块进行分词和建索引,URL放入URL DB。信息采集过程,是将别人网站的信息放到抓取到自己的信息库的过程,会面临着一些问题。 1、互联网信息每刻都不停的增加,因而信息抓取是7*24小时不间断过程。频繁的抓取会对目标网站带来巨大的访问压力,形成DDOS拒绝服务攻击,导致无法为正常用户提供访问,这一点在中小型网站体现的尤为明显,这些网站的硬件资源比较差,技术力量不强,而互联网中90%以上是该类型的网站。例如:某著名搜索引擎由于频繁抓取某网站而召到用户投诉。2、有些网站的信息具备隐私或版权,很多网页中包含后台数据库、用户稳私、密码等信息。网站主办者不希望这些信息被公之于众或无偿使用。大众点评网曾就爱帮网抓取其网站上的点评信息,然后发布在自己网站上的行为进行起诉。目前针对搜索引擎的网页反采集采取的主流方法有robots协议约定,网站通过一个robots, txt协议来自主控制是否愿意自身内容被搜索引擎收录,以及允许哪些搜索引擎收录,并且指定自身可供收录和禁止收录的内容。同时,搜索引擎会自觉按照每个网站Robots协议给予自己的权限来进行抓取。该方法假定的搜索引擎爬取流程如下:下载网站robots文件-按robots协议解析该文件一获取待下载的URL-判断该URL所在的访问权限-根据判断结果决定是否爬取。Robots协议是君子协议,无任何约束性,爬取的主动性仍然完全控制在搜索引擎一方,完全可以不遵循该协议进行强行爬取。例如国内某著名搜索引擎在2012年8月份不遵循该协议爬取百度网站内容而遭到百度指责。另外一种反采集方法主要通过使用动态技术构建欲禁止抓取的网页,该方法通过使用客户端脚本语言(如JS,VBScript,AJAX)动态生成网页显示信息,从而实现信息隐藏,使常规的搜索引擎难以获取URL和正文内容。动态网页构建技术只是增加了网页解析和抽取的难度,并不能从根本上禁止网页信息的采集和解析,目前,一些先进的搜索引擎已经可以做到模拟浏览器实现所有脚本代码的解析,获取 所有信息的网络URL,从而获取存放于服务器的动态信息。目前已经存在成熟的网页动态解析技术,主要是通过解析网页中所有的脚本代码段,然后获取网页所有的动态信息(包括有用信息和垃圾信息)。实际实施过程是以开源的脚本代码解析引擎(如Rhino,V8等)为内核,构建网页脚本解析环境,然后抽取网页中的脚本代码段,将抽取的代码段放入网页脚本解析环境中执行解析,从而返回动态信息。解析过程如图2所示,所以动态技术构建动态网页的方法只是增加了网页采集和解析的难度,并没有从根本上杜绝搜索引擎的采集。

发明内容
本发明的目的是提供了一种能识别网页信息自动采集的系统与方法,克服了现有技术的不足,该系统通过分析网站的历史网页访问行为,建立自动采集分类器,识别出机器人的自动采集,通过自动机器人采集识别,实现网页反抓取。本发明采用的技术方案如下:一种能识别网页信息自动采集的系统与方法,包括反采集分类器构建模块、自动采集识别模块和反采集在线处理模块,反采集分类器构建模块,该模块主要用于使用计算机程序对历史的web信息自动采集和正常的网页访问行为进行学习并区分,该模块为自动采集识别提供训练模型,所述的自动采集识别模块,该模块主要通过加载自动分类器,自动识别出搜索引擎程序的自动采集行为,并将识别出的采集程序所处的IP段加入黑名单,该黑名单用于后续对自动采集行为进行在线拦截,所述的反采集在线处理模块,该模块主要用于对访问的用户进行自动在线判定和处理,如果该访问者的IP已在IP段黑名单中,则拒绝该IP进行访问;否则,将该访问请求转交给web服务器进行继续处理。所述的反采集分类器构建模块实现方法具体包含如下步骤:(5)日志解析子模块通过对站点访问日志的自动解析,获取用户的访问行为信息,包括用户访问网站所用的IP,访问发生时间,访问的URL,来源URL ;样本选取子模块对步骤I中的解析数据记录进行选取,依据是同一 IP段在连续一段时间内访问频度最高的数据记录作为候选数据加入到样本集中;访问统计子模块对已选取的样本数据进行统计,统计出同一 IP段的平均页面停留时间、访问站点的总页面数、是否采集网页附件信息、网页采集频率;(6)以IP段作为主关键字,将上述信息存入样本库,并将其标记为未标注;(7)对步骤(I)中的未标注样本进行标注,如果确定样本为机器自动采集,则标注为I ;如果为用户浏览器正常访问,则标注为0,将所有标注完的样本更新入数据库;(8)计算机程序自动对样本库进行学习,生成分类模型,用于后期的自动采集识别。所述的自动采集识别模块实现方法包含如下步骤:(5)识别程序初始化阶段,完成分类器模型的加载,该模型可以判断自动采集行为;(6)日志解析程序对最新的网站访问日志进行解析,并将解析后的数据发送到访问统计模块;(7)访问统计模块计算出同一 IP段的平均页面停留时间、是否采集网页附件信息、网页采集频率;(8)分类器基于分类模型对该IP段的访问行为进行判定,将判定为程序自动采集行为的IP段加入黑名单;所述的反采集在线处理模块实现方法,包括以下几个步骤:(I)对于web服务器转交过的访问请求,提取访问者的IP信息;(2)在黑名单库中比对该IP信息,如果IP已处于黑名单中,则通知web服务器拒绝该IP的访问;否则,通知web服务器对该访问请求进行正常处理。与已有技术相比,本发明的有益效果如下:本发明该系统通过分析网站的历史网页访问行为,建立自动采集分类器,识别出机器人的自动采集,通过自动机器人采集识别,实现网页反抓取,自动发现搜索引擎的网页采集行为,并对其采集行为进行屏蔽,从根本上杜绝搜索引擎的采集。


图1为现有技术搜索引擎信息抓取过程简图;图2为现有技术二解析过程简图;图3为本发明反采集分类器构建模块图;图4为本发明自动采集识别模块图;图5为本发明反采集在线处理模块。
具体实施例方式参见附图,一种能识别网页信息反抓取系统与方法,包括反采集分类器构建模块、自动采集识别模块和反采集在线处理模块,反采集分类器构建模块,该模块主要用于使用计算机程序对历史的web信息自动采集和正常的网页访问行为进行学习并区分,该模块为自动采集识别提供训练模型,所述的自动采集识别模块,该模块主要通过加载自动分类器,自动识别出搜索引擎程序的自动采集行为,并将识别出的采集程序所处的IP段加入黑名单,该黑名单用于后续对自动采集行为进行在线拦截,所述的反采集在线处理模块,该模块主要用于对访问的用户进行自动在线判定和处理,如果该访问者的IP已在IP段黑名单中,则拒绝该IP进行访问;否则,将该访问请求转交给web服务器进行继续处理。所述的反采集分类器构建模块实现方法具体包含如下步骤:(9)日志解析子模块通过对站点访问日志的自动解析,获取用户的访问行为信息,包括用户访问网站所用的IP,访问发生时间,访问的URL,来源URL ;样本选取子模块对步骤I中的解析数据记录进行选取,依据是同一 IP段在连续一段时间内访问频度最高的数据记录作为候选数据加入到样本集中;访问统计子模块对已选取的样本数据进行统计,统计出同一 IP段的平均页面停留时间、访问站点的总页面数、是否采集网页附件信息、网页采集
频率;(10)以IP段作为主关键字,将上述信息存入样本库,并将其标记为未标注;(11)对步骤(I)中的未标注样本进行标注,如果确定样本为机器自动采集,则标注为I ;如果为用户浏览器正常访问,则标注为0,将所有标注完的样本更新入数据库;(12)计算机程序自动对样本库进行学习,生成分类模型,用于后期的自动采集识别。所述的自动采集识别模块实现方法包含如下步骤:(9)识别程序初始化阶段,完成分类器模型的加载,该模型可以判断自动采集行为;(10)日志解析程序对最新的网站访问日志进行解析,并将解析后的数据发送到访问统计模块;(11)访问统计模块计算出同一 IP段的平均页面停留时间、是否采集网页附件信息、网页采集频率;(12)分类器基于分类模型对该IP段的访问行为进行判定,将判定为程序自动采集行为的IP段加入黑名单;所述的反采集在线处理模块实现方法,包括以下几个步骤:(I)对于web服务器转交过的访问请求,提取访问者的IP信息;(2)在黑名单库中比对该IP信息,如果IP已处于黑名单中,则通知web服务器拒绝该IP的访问;否则,通知web服务器对该访问请求进行正常处理。反采集分类器构建该模块主要用于训练计算机程序,使其能对历史的web信息自动采集和正常的网页访问行为进行学习并区分,该模块可以为后续的自动采集识别提供训练模型。具体包括如下几个步骤。2.2.1.1 日志解析该模块需要对服务器历史访问日志(可以选取某一天的日志)进行解析,抽取出获取用户的访问行为信息,包括用户访问网站所用的IP,访问发生时间,访问的URL,来源URL。具体包括如下两个步骤:(I)每一个要提取的用户访问信息项编写正则表达式。IP表达式抽取正则式定义为:
权利要求
1.一种能识别网页信息自动采集的系统与方法,其特征在于:包括反采集分类器构建模块、自动采集识别模块和反采集在线处理模块,反采集分类器构建模块,该模块主要用于使用计算机程序对历史的web信息自动采集和正常的网页访问行为进行学习并区分,该模块为自动采集识别提供训练模型,所述的自动采集识别模块,该模块主要通过加载自动分类器,自动识别出搜索引擎程序的自动采集行为,并将识别出的采集程序所处的IP段加入黑名单,该黑名单用于后续对自动采集行为进行在线拦截,所述的反采集在线处理模块,该模块主要用于对访问的用户进行自动在线判定和处理,如果该访问者的IP已在IP段黑名单中,则拒绝该IP进行访问;否则,将该访问请求转交给web服务器进行继续处理。
2.根据权利要求1所述的一种能识别网页信息反抓取系统与方法,其特征在于:所述的反采集分类器构建模块实现方法具体包含如下步骤: (1)日志解析子模块通过对站点访问日志的自动解析,获取用户的访问行为信息,包括用户访问网站所用的IP,访问发生时间,访问的URL,来源URL ;样本选取子模块对步骤I中的解析数据记录进行选取,依据是同一 IP段在连续一段时间内访问频度最高的数据记录作为候选数据加入到样本集中;访问统计子模块对已选取的样本数据进行统计,统计出同一 IP段的平均页面停留时间、访问站点的总页面数、是否采集网页附件信息、网页采集频率; (2)以IP段作为主关键字,将上述信息存入样本库,并将其标记为未标注; (3)对步骤(I)中的未标注样本进行标注,如果确定样本为机器自动采集,则标注为I;如果为用户浏览器正常访问,则标注为O,将所有标注完的样本更新入数据库; (4)计算机程序自动对样本库进行学习,生成分类模型,用于后期的自动采集识别。
3.根据权利要求1所述的一种能识别网页信息反抓取系统与方法,其特征在于:所述的自动采集识别模块实现方法包含如下步骤: (1)识别程序初始化 阶段,完成分类器模型的加载,该模型可以判断自动采集行为; (2)日志解析程序对最新的网站访问日志进行解析,并将解析后的数据发送到访问统计丰吴块; (3)访问统计模块计算出同一IP段的平均页面停留时间、是否采集网页附件信息、网页采集频率; (4)分类器基于分类模型对该IP段的访问行为进行判定,将判定为程序自动采集行为的IP段加入黑名单;
4.根据权利要求1所述的一种能识别网页信息反抓取系统与方法,其特征在于:所述的反采集在线处理模块实现方法,包括以下几个步骤: (1)对于web服务器转交过的访问请求,提取访问者的IP信息; (2)在黑名单库中比对该IP信息,如果IP已处于黑名单中,则通知web服务器拒绝该IP的访问;否则,通知web服务器对该访问请求进行正常处理。
全文摘要
本发明公开了一种能识别网页信息自动采集的系统与方法,包括反采集分类器构建模块、自动采集识别模块和反采集在线处理模块,反采集分类器构建模块主要用于使用计算机程序对历史的web信息自动采集和正常的网页访问行为进行学习并区分,自动采集识别模块,通过运用上述步骤中的反采集分类器,自动识别出搜索引擎程序的自动采集行为,并将识别出的采集程序所处的IP段加入黑名单。反采集在线处理模块主要用于对访问的用户进行自动在线判定和处理。本发明克服了现有技术的不足,该系统通过分析网站的历史网页访问行为,建立自动采集分类器,识别出机器人的自动采集,通过自动机器人采集识别,实现网页反抓取。
文档编号G06F17/30GK103218431SQ20131012830
公开日2013年7月24日 申请日期2013年4月10日 优先权日2013年4月10日
发明者张炜, 金军, 吴杨梓, 江岩 申请人:金军, 江岩
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1