CN108763537A - 一种基于时间感知的增量机器爬虫方法 - Google Patents
一种基于时间感知的增量机器爬虫方法 Download PDFInfo
- Publication number
- CN108763537A CN108763537A CN201810551090.1A CN201810551090A CN108763537A CN 108763537 A CN108763537 A CN 108763537A CN 201810551090 A CN201810551090 A CN 201810551090A CN 108763537 A CN108763537 A CN 108763537A
- Authority
- CN
- China
- Prior art keywords
- page
- time
- crawl
- similarity score
- timetable
- 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.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于时间感知的增量机器爬虫方法,根据每个页面的基于初始爬行时间表T={t1,t2,...,tn}的相似性得分序列PTS和最大相似性阈值δ,将大于最大相似性阈值δ的相似性得分和对应的初始时间戳去掉,得到优化的相似性得分时间序列new_PTS和优化的爬行计划时间表new_T;如果优化的爬行计划时间表new_T的时间戳数|new_T|大于最佳爬行频次,就根据优化的相似性得分序列new_PTS得出降维后的时间感知相似性协方差矩阵,用MIQP算法得出页面的最佳爬行时间表,对发生变化的网页进行增量更新。本发明可以为目标页面制定最优的页面刷新策略,从而降低页面的刷新代价,减少数据冗余的产生,提高爬虫的效率并保证抓取资源的新鲜性。
Description
技术领域
本发明属于互联网技术领域,具体涉及一种基于时间感知的增量机器爬虫方法,主要应用于多媒体社交网络视频资源的采集。
背景技术
伴随着大数据和Web2.0技术的兴起,多媒体社交网络(MultimediaSocialNetwork,简称MSN)上视频内容呈现爆炸式增长,丰富的视频资源为用户提供了更多更好的视频服务,同时也为用户提供了更多有价值的研究数据。但是视频页面的不断更新变化使得爬取最新最热的视频资源越来越困难,频繁的刷新页面不仅会耗费大量的资源,而且会产生大量的冗余。因此,如何在大量的视频资源中及时了解网页变化的特征,用最低的刷新代价爬取最新的视频资源,给用户提供更加优质的服务,成为当前多媒体社交网络服务的一个挑战。
一般情况下,网页是否发生变化是通过不同时间上页面之间的相似度来检测的。相似度越小,说明网页的差异度越大,网页发生了变化。通过这种方式,我们可以监控不同时间网页的变化情况,找出网页变化最大的几个时间点。在这些时间点上对变化的网页进行页面刷新。
增量爬虫技术就是使用某种页面刷新策略来确保页面副本的新颖性。其中,针对页面变化的研究是制定页面刷新策略的重点。无论是通过采样样本的方式来确定刷新时刻,还是使用基于泊松(Poisson)分布的页面刷新策略,或者是基于信息周期的刷新策略,都存在数据冗余、刷新代价大、新鲜度得不到有效保证等问题。
发明内容
本发明的目的是针对频繁重爬技术效率低,刷新代价大,数据冗余等问题,提供一种基于时间感知的增量机器爬虫方法,通过分析页面更新模式特征,结合信息精确度和信息新鲜度的指标,为发生有价值变化的网页制定最优的页面刷新策略。
为了实现上述目的,本发明采用的具体方案为:一般情况下,网页是否发生变化是通过不同时间上页面之间的相似度来检测的。相似度越小,说明网页的差异度越大,网页发生了变化。通过这种方式,我们可以监控不同时间网页的变化情况,找出网页变化最大的几个时间点。在这些时间点上对变化的网页进行页面刷新。因此本发明在K.Gupta教授的精度感知页面刷新策略的基础上增加新鲜度感知和降维思想来确定网页刷新的最优爬行时间序列,提出基于时间感知的增量爬虫算法,进一步提高增量爬虫的效率和获取信息的新鲜度。
一种基于时间感知的增量机器爬虫方法,包括如下步骤:
第一步,根据每个页面的基于初始爬行时间表T={t1,t2,...,tn}的相似性得分序列PTS和最大相似性阈值,去掉相似性得分序列PTS中大于最大相似性阈值的相似性得分,以组成优化的相似性得分序列new_PTS,并将所去掉的相似性得分对应的时间戳从初始爬行时间表中去掉,以得到优化的爬行计划时间表new_T;
第二步,如果优化的爬行计划时间表new_T的时间戳数|new_T|大于最佳爬行频次,就根据优化的相似性得分序列new_PTS得出降维后的时间感知相似性协方差矩阵;
第三步,用MIQP算法优化第二步中降维后的时间感知相似性协方差矩阵,得出页面的最佳爬行时间表,也意味着页面在最佳爬行时间表中的时间戳上将会发生有价值的变化;
第四步,根据第三步得到的页面的最佳爬行时间表,对发生变化的网页进行增量更新。
下面对以上方法进行详细说明,以便于对本方法技术方案的理解。
由于不同类型的页面的信息生存周期存在较大差异,所以初始爬行时间表的设定要依据页面的信息生存周期。通过对多个来源的爬虫目标进行收集分析,分析出目标类信息的生存周期。设定初始爬行时间表T={t1,t2,...,tn},然后根据初始爬行计划中的时间戳来监控目标页面的更新情况,目标页面P在不同时间戳产生的快照的集合为P={P1,P2,...,Pn},根据公式(1-1)计算相邻页面的相似性得分S(Pi,Pj),得出目标页面P的相似性得分时间序列PTS={S(P1,P2),S(P2,P3),...,S(Pn-1,Pn)};
然后构建基于页面相似性得分的时间感知相似性协方差矩阵M,如公式(1-2);
其中,M是n×n矩阵,单元格(i,j)中的条目表示在时间戳ti和tj上爬行的页面之间的相似性得分的平均值。如果将初始爬行时间表T={t1,t2,...,tn}作为一个周期,那么d表示监控目标页面P的周期数,S(Pi,Pj)表示在第k个周期爬行的页面Pi和Pj之间的页面相似性得分。
理想情况下,应该选择合适的时间戳,使所选择的时间戳在M矩阵中具有较小值;间接地,应该寻找一个子集T’,使得公式(1-3)被较小化;
用枚举的方法可以获得使公式(1-3)较小化的子集T’,但是这种方法的时间复杂度是指数级的,为了优化这个方法需要从另一个角度考虑问题。这个问题的本质实际上就是给定一组变量,必须选择一些变量才能实现目标。这里,一组变量对应于爬行的时间戳,目标是使式(1-3)中给出的函数较小化。因此,正式的问题定义如下:
假设t1,t2,...,tn是爬行时间戳,每个ti与布尔参数bi相关联,使得
给定子集T’的基数f和时间感知相似性协方差矩阵M,重构问题如下所示:
这是一个二进制二次规划问题,可以使用混合整数二次规划(MIQP)求解,MIQP的目标函数形式是min 0.5xTHx+αTx,其中,H=2M。为了使用混合整数二次规划(MIQP)求解二进制二次规划问题,将α设为零向量。该方法的时间复杂度是多项式级别的,即O(|T|2)。
求解的结果是一个n维的列向量,即xT=(x1,x2,x3,...,xn),其中xn∈{0,1},n=1,2,3,...找出x的值为1时对应的爬行时间戳,以构成爬行时间表,作为所述的子集T’。
以上所述的子集T’为目标页面的最佳爬行时间表,f为目标页面的最佳爬行频次,而在获得目标页面的最佳爬行时间表之前,需要先找到目标页面的最佳爬行频次f和最大相似性阈值δ。
最佳爬行频次f的发现是依据网页的变化特征,得出页面在初始爬行时间表的页面相似性得分时间序列,然后构建基于页面相似性得分的时间感知相似性协方差矩阵,最后利用以上分析的对矩阵的处理方法以及使用混合整数二次规划(MIQP)方法求出在用户自定义的不同的爬行频次下的爬行时间表,用所获得的爬行时间表与初始爬行时间表相比较,找出使爬虫结果的精确度、新鲜度和计算时间复杂度最优的、且最小的爬行频次作为页面的最佳爬行频次。这样可以以较低的刷新代价获得最优的刷新结果。所提到的爬虫结果的精确度和新鲜度可以分别用以下公式(1-4)和公式(1-5)来表示:
其中,爬行结果的精确度是指信息精确度,表示为通过爬行时间表TP捕获的信息NTP相对于初始爬行时间表T捕获的信息NT的百分比;爬行结果的新鲜度是指信息新鲜度,表示为通过爬行时间表TP捕获的最新信息FTP相对于初始爬行时间表T捕获的信息NT的百分比。信息精确度和信息新鲜度之间的区别就在于通过爬行时间表TP捕获的信息是否是最新的,如果信息的发布时间与抓取时间不超过一天,说明爬取的信息是最新的。
所述最大相似性阈值的获得方法是:在获得的最佳爬行频次下,自定义不同的相似性阈值,并用不同的相似性阈值分别对基于页面相似性得分的时间感知相似性协方差矩阵进行降维处理,所述的降维处理是指把页面相似性得分时间序列PTS中相似性得分平均值高于自定义的相似性阈值的时间戳过滤掉,形成新的页面相似性得分时间序列new_PTS,然后构建降维后的基于页面相似性得分的时间感知相似性协方差矩阵;最后利用以上分析的对矩阵的处理方法以及MIQP算法得到页面更新的爬行时间序列,用页面更新的爬行时间序列和初始爬行时间表相比较,找出使爬虫结果的精确度、新鲜度和MIQP算法的时间复杂度最优的、且最大的相似性阈值作为最大相似性阈值。此处的比较方法与上述最佳爬行频次中的比较方法相同。
有益效果:根据目标页面的更新模式特征,通过上述的技术方案得到每个目标页面对应的最佳爬行时间序列,根据该序列可以为目标页面制定最优的页面刷新策略,从而降低页面的刷新代价,减少数据冗余的产生,提高爬虫的效率并保证抓取资源的新鲜性。
附图说明
图1是本发明所述方法的流程图。
具体实施方式
下面结合实施例,对本发明的技术方案作进一步的说明。
在多媒体社交网络中,由于不同类型的页面的信息生存周期存在较大差异,所以初始爬行时间表的设定要依据页面的信息生存周期。在实施例中要抓取的目标页面是科技类页面,通过对多个网站的科技类信息进行收集分析,分析结果表明,科技类信息的发布速度大致相同,信息的寿命都比较长,平均为20天左右。说明该类信息的价值比较高。所以可以以一个月为周期,将初始爬行时间表设定为以一天为间隔的时间序列,如初始爬行计划是T={1号,2号,...,30号}。
然后以一天为间隔监控不同网站上的科技类视频信息三个月,然后以网站A的首页数据作为目标页面,计算相邻页面的相似性得分S(Pi,Pj),为了简化研究,本发明只考虑从给定页面Pi提取相关科技链接,而不是完整的页面内容。因为新的科技以新的链出链接的形式发布重要内容,其中每个科技链出链接都链接到视频页面。总之,每个Pi现在可以被看作是相关科技链接的集合。
然后得出页面在每个月内(30天)的相似性得分时间序列PTS={S(P1,P2),S(P2,P3),...,S(P29,P30)},由此生成基于页面相似性得分的时间感知相似性协方差矩阵M。然后分别计算出在爬行频次为2,3,4,5,6,7,8,9,10,11,12,...,29时,混合整数二次规划(MIQP)策略生成的爬行计划的信息精确度、信息新鲜度和消耗的时间,依据这些指标选出最佳的爬行频次f。然后在固定的最佳爬行频次f下,用不同的相似性阈值1.0,9.5,9.0,8.5,8.0,7.5,7.0,6.5,6.0对基于页面相似性得分的时间感知相似性协方差矩阵M进行降维处理,然后构建降维后的基于页面相似性得分的时间感知相似性协方差矩阵M’,最后调用MIQP算法得到页面更新的爬行时间序列,用页面更新的爬行时间序列和初始爬行时间表相比较,找出使爬虫结果的精确度,新鲜度和MIQP算法的时间复杂度最优的、且最大的相似性阈值,作为最大相似性阈值δ。
由于科技类网站的信息生存周期大致相同,所以可以以网站A首页为标准,分析得出最佳的爬行频次f和最优的最大相似性阈值δ,然后结合初始爬行计划T和目标页面的相似性得分时间序列PTS,依据基于时间感知的增量爬虫算法计算出每个目标页面的最佳爬行时间序列T’。
具体的方法是:将所获得的页面在每个月内的相似性得分时间序列PTS={S(P1,P2),S(P2,P3),...,S(P29,P30)}中相似性得分小于最大相似性阈值δ的得分添加到优化后的相似性得分时间序列new_PTS,并生成相应的优化后的爬行计划时间表new_T;如果优化的爬行计划时间表new_T的时间戳数|new_T|大于最佳爬行频次,就根据优化的相似性得分序列new_PTS得出降维后的时间感知相似性协方差矩阵;用MIQP算法优化第二步中降维后的时间感知相似性协方差矩阵,得出页面的最佳爬行时间表T’;最后依据页面的最佳爬行时间表T’对发生变化的网页进行增量更新。
Claims (4)
1.一种基于时间感知的增量机器爬虫方法,其特征在于,包括如下步骤:
第一步,根据每个页面的基于初始爬行时间表T={t1,t2,...,tn}的相似性得分序列PTS和最大相似性阈值,去掉相似性得分序列PTS中大于最大相似性阈值的相似性得分,以组成优化的相似性得分序列new_PTS,并将所去掉的相似性得分对应的时间戳从初始爬行时间表中去掉,以得到优化的爬行计划时间表new_T;
第二步,如果优化的爬行计划时间表new_T的时间戳数|new_T|大于最佳爬行频次,就根据优化的相似性得分序列new_PTS得出降维后的时间感知相似性协方差矩阵;
第三步,用MIQP算法优化第二步中降维后的时间感知相似性协方差矩阵,得出页面的最佳爬行时间表;
第四步,根据第三步得到的页面的最佳爬行时间表,对发生变化的网页进行增量更新。
2.根据权利要求1所述的一种基于时间感知的增量机器爬虫方法,其特征在于,所述相似性得分序列PTS的获得方法为:根据初始爬行时间表T={t1,t2,...,tn}中的时间戳监控目标页面P的更新情况,目标页面P在不同时间戳产生的快照的集合为P={P1,P2,...,Pn},按照公式计算得到相邻页面Pi,Pj之间的相似性得分S(Pi,Pj),从而得到目标页面P的相似性得分序列PTS={S(P1,P2),S(P2,P3),...,S(Pn-1,Pn)},其中i、j均为1到n的自然数,且j=i+1。
3.根据权利要求2所述的一种基于时间感知的增量机器爬虫方法,其特征在于,最佳爬行频次的获得方法为:
首先,根据页面的相似性得分构建时间感知相似性协方差矩阵M,M是n×n矩阵,在公式中,Mi,j表示在时间戳ti和tj上爬行的页面之间的相似性得分的平均值,f为爬行频次,b为布尔参数;
然后自定义多个不同的爬行频次,使用MIQP算法求解得出在不同的爬行频次下的爬行时间表,用所获得的爬行时间表与初始爬行时间表相比较,找出使爬虫结果的精确度、新鲜度和计算时间复杂度最优的、且最小的爬行频次作为页面的最佳爬行频次;所述的精确度是指爬行计划的信息精确度,表示为依据爬行时间表捕获的信息和依据初始爬行时间表捕获的信息之间的百分比;所述的新鲜度是指爬行计划的信息新鲜度,表示为依据爬行时间表捕获的最新信息和依据初始爬行时间表捕获的信息之间的百分比。
4.根据权利要求3所述的一种基于时间感知的增量机器爬虫方法,其特征在于,所述最大相似性阈值的获得方法是:在获得的最佳爬行频次下,自定义不同的相似性阈值,并用不同的相似性阈值分别对基于页面相似性得分的时间感知相似性协方差矩阵进行降维处理,构建降维后的基于页面相似性得分的时间感知相似性协方差矩阵,最后调用MIQP算法得到页面更新的爬行时间序列,用页面更新的爬行时间序列和初始爬行时间表相比较,找出使爬虫结果的精确度、新鲜度和MIQP算法的时间复杂度最优的、且最大的相似性阈值作为最大相似性阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810551090.1A CN108763537B (zh) | 2018-05-31 | 2018-05-31 | 一种基于时间感知的增量机器爬虫方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810551090.1A CN108763537B (zh) | 2018-05-31 | 2018-05-31 | 一种基于时间感知的增量机器爬虫方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108763537A true CN108763537A (zh) | 2018-11-06 |
CN108763537B CN108763537B (zh) | 2021-05-18 |
Family
ID=64001246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810551090.1A Active CN108763537B (zh) | 2018-05-31 | 2018-05-31 | 一种基于时间感知的增量机器爬虫方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108763537B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000886A (zh) * | 2020-08-14 | 2020-11-27 | 北京百度网讯科技有限公司 | 用户行为记录方法、装置、设备和可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6631369B1 (en) * | 1999-06-30 | 2003-10-07 | Microsoft Corporation | Method and system for incremental web crawling |
CN101261634A (zh) * | 2008-04-11 | 2008-09-10 | 哈尔滨工业大学深圳研究生院 | 基于增量Q-Learning的学习方法及系统 |
CN101739427A (zh) * | 2008-11-10 | 2010-06-16 | 中国移动通信集团公司 | 一种爬虫抓取的方法及其装置 |
CN103020313A (zh) * | 2013-01-08 | 2013-04-03 | 北京航空航天大学 | 一种基于探测网页更新周期的抓取方法 |
CN103714149A (zh) * | 2013-12-26 | 2014-04-09 | 华中科技大学 | 一种自适应增量式的深层网络数据源发现方法 |
CN103970787A (zh) * | 2013-02-01 | 2014-08-06 | 北京英富森信息技术有限公司 | 一种增量更新与爬取技术 |
US9177016B2 (en) * | 2012-12-28 | 2015-11-03 | Facebook, Inc. | Saved queries in a social networking system |
CN105117501A (zh) * | 2015-10-09 | 2015-12-02 | 广州神马移动信息科技有限公司 | 网络爬虫调度方法及应用其的网络爬虫系统 |
CN105528376A (zh) * | 2014-10-22 | 2016-04-27 | 腾讯科技(深圳)有限公司 | 多媒体信息更新方法及装置 |
-
2018
- 2018-05-31 CN CN201810551090.1A patent/CN108763537B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6631369B1 (en) * | 1999-06-30 | 2003-10-07 | Microsoft Corporation | Method and system for incremental web crawling |
CN101261634A (zh) * | 2008-04-11 | 2008-09-10 | 哈尔滨工业大学深圳研究生院 | 基于增量Q-Learning的学习方法及系统 |
CN101739427A (zh) * | 2008-11-10 | 2010-06-16 | 中国移动通信集团公司 | 一种爬虫抓取的方法及其装置 |
US9177016B2 (en) * | 2012-12-28 | 2015-11-03 | Facebook, Inc. | Saved queries in a social networking system |
CN103020313A (zh) * | 2013-01-08 | 2013-04-03 | 北京航空航天大学 | 一种基于探测网页更新周期的抓取方法 |
CN103970787A (zh) * | 2013-02-01 | 2014-08-06 | 北京英富森信息技术有限公司 | 一种增量更新与爬取技术 |
CN103714149A (zh) * | 2013-12-26 | 2014-04-09 | 华中科技大学 | 一种自适应增量式的深层网络数据源发现方法 |
CN105528376A (zh) * | 2014-10-22 | 2016-04-27 | 腾讯科技(深圳)有限公司 | 多媒体信息更新方法及装置 |
CN105117501A (zh) * | 2015-10-09 | 2015-12-02 | 广州神马移动信息科技有限公司 | 网络爬虫调度方法及应用其的网络爬虫系统 |
Non-Patent Citations (2)
Title |
---|
KANIK GUPTA 等: "AcT: Accuracy-aware crawling techniques for cloud-crawler", 《WORLD WIDE WEB》 * |
刘芳云 等: "计算机测量与控制", 《基于HADOOP的分布式并行增量爬虫技术研究》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112000886A (zh) * | 2020-08-14 | 2020-11-27 | 北京百度网讯科技有限公司 | 用户行为记录方法、装置、设备和可读存储介质 |
CN112000886B (zh) * | 2020-08-14 | 2024-02-02 | 北京百度网讯科技有限公司 | 用户行为记录方法、装置、设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108763537B (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Chaotic krill herd algorithm | |
Wozniak | A hybrid decision tree training method using data streams | |
Azad et al. | A simplified binary artificial fish swarm algorithm for 0–1 quadratic knapsack problems | |
CN112987666B (zh) | 电厂机组运行优化调控方法及系统 | |
Lai et al. | Lightcts: A lightweight framework for correlated time series forecasting | |
Jiang et al. | Natural event summarization | |
Xiao et al. | Optimal mathematical programming and variable neighborhood search for k-modes categorical data clustering | |
Jung et al. | Analyzing future communities in growing citation networks | |
Li et al. | Online semi-supervised multi-label classification with label compression and local smooth regression | |
Tomar et al. | A survey on data mining optimization techniques | |
CN103793438A (zh) | 一种基于MapReduce的并行聚类方法 | |
CN108763537A (zh) | 一种基于时间感知的增量机器爬虫方法 | |
Wang et al. | Similar sports play retrieval with deep reinforcement learning | |
Arabo | The Web and AI Influences on Distributed Consensus Protocols in Cloud Computing: A Review of Challenges and Opportunities | |
Nguyen et al. | Strategies of multi-step-ahead forecasting for chaotic time series using autoencoder and LSTM neural networks: a comparative study | |
Wagner et al. | An analysis of adaptive windowing for time series forecasting in dynamic environments: further tests of the DyFor GP model | |
Lamirel et al. | A new incremental growing neural gas algorithm based on clusters labeling maximization: application to clustering of heterogeneous textual data | |
Laschov et al. | On Boolean control networks with maximal topological entropy | |
Cohen et al. | Incremental info-fuzzy algorithm for real time data mining of non-stationary data streams | |
Li et al. | Data-driven time series forecasting for social studies using spatio-temporal graph neural networks | |
Tang et al. | Adversarial Cluster-Level and Global-Level Graph Contrastive Learning for node representation | |
Huang et al. | An empirical study of dynamic incomplete-case nearest neighbor imputation in software quality data | |
Wang et al. | Representing Multi-View Time-Series Graph Structures for Multivariate Long-Term Time-Series Forecasting | |
Sarajpoor et al. | Time Series Aggregation in Power System Studies in the Presence of Wind Energy: A Matrix-Profile Perspective | |
Harshitha et al. | Crop Growth Prediction using Ensemble KNN-LR Model |
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 |