一种基于网页切分爬取的网络地址置信度评估方法与流程

文档序号:15636972发布日期:2018-10-12 21:35阅读:252来源:国知局

本发明属于网页信息内容完整性评估技术领域,特别涉及一种基于网页切分爬取的网络地址置信度评估方法。



背景技术:

爬取网页信息并对网页进行分类对实现人员的行为习惯分析有着重要的作用和意义。传统的网页爬取技术,往往因为页面更新或者网站停止运营,导致无法全面的得到原始网页的信息,已经不能满足社会信息化发展的需求。近年来,针对网页内容更新频繁,研究者提供了相应的解决方法,如切分网页、手工标注等。

朱全银、潘舒新等人已有的研究基础包括:李翔,朱全银.联合聚类和评分矩阵共享的协同过滤推荐[j].计算机科学与探索,2014,8(6):751-759;quanyinzhu,sunquncao.anovelclassifier-independentfeatureselectionalgorithmforimbalanceddatasets.2009,p:77-82;quanyinzhu,yunyangyan,jinding,jinqian.thecasestudyforpriceextractingofmobilephonesellonline.2011,p:282-285;zhuquanyin,panlu,yinyonghualixiang.influenceonnormalizationandmagnitudenormalizationforpriceforecastingofagriculturalproducts.informationtechnologyjournal(itj).2013.vol.12(15):3046-3057;quanyinzhu,jinding,yonghuayin,peizhou.ahybridapproachfornewproductsdiscoveryofcellphonebasedonwebmining.journalofinformationandcomputationalscience(jics).2012,vol.9(16):5039-5046;pans,fanj,yus,etal.amethodofbehaviorevaluationbasedonwebbrowsinginformation.smartgridandelectricalautomation(icsgea),2017internationalconferenceon.ieee,2017:697-700.朱全银、潘舒新等人申请、公开与授权的相关专利:朱全银,尹永华,严云杨,曹苏群等,一种基于神经网络的多品种商品价格预测的数据预处理方法.中国专利:zl201210325368.6,2016.06.08;朱全银,胡蓉静,何苏群,周培等.一种基于线性插补与自适应滑动窗口的商品价格预测方法.中国专利:zl201110423015.5,2015.07.01;朱全银,曹苏群,严云洋,胡蓉静等,一种基于二分数据修补与扰乱因子的商品价格预测方法.中国专利:zl201110422274.6,2015.07.01;朱全银,辛诚,李翔,潘舒新等,一种基于k-means和lda双向验证的网络行为习惯聚类方法.中国专利公开号:cn106202480a,2016.12.07;朱全银,辛诚,刘斌,潘舒新等,一种基于分类语料库-关键词词频-记录关联的网络行为习惯量化方法.中国专利公开号cn106202498a,2016.12.07;朱全银,潘舒新,李翔,贾笑颖等,一种多维度的网页浏览行为评估方法.中国专利公开号:cn106886577a,2017.06.23。

现有技术分析:

卜佳俊、李辉、陈伟等在2009年申请的发明专利《基于新闻去重的网页爬虫的构造方法》(中国专利公开号cn101694658b,2012.07.04)提出了爬取网页内容再与测试集进行对比,提高爬取效率;周东在2013年申请的发明专利《一种网页爬虫抓取方法及装置》(中国专利公开号cn103336834b,2017.04.12)提出了根据种子数生成网页,从而提高网页爬取的效率;吴羽、黄文恺、李奕宏等人在2017年申请的发明专利《基于搜索及网络爬虫的数据抓取方法》(中国专利公开号cn107679085a,2018.02.09)中提出了基于搜索引擎的网页爬取的数据抓取方式,提高了网页爬虫的适应性。虽然上述三种典型的网页爬虫方式都提高了传统的网页爬取效率,但是当原始网页更新,或者原始网页的地址无法访问时,就会导致上述的爬虫方法无法有效的获取网页信息。朱全银、潘舒新、李翔等人在2017年申请的发明专利《一种多维度网页浏览行为评估方法》(中国专利公开号cn106886577a,2017.06.23)创造性的提出了一种网页切分的方法,即当原始网页无法访问时,通过逐步切分网页的方式爬取子网页。该方法有效的解决了原始网页无法访问的问题。但是,该方法对原始网页进行切分的时候,可能会导致切分后爬取的网页内容,和原始网页内容存在差异,例如原始网页的网页内容为“军事”,通过切分后的网页内容,可能被分为“综合”。

如何区别切分后网页内容与原始网页内容之间的差异,需要一种评估网络地址置信度的算法,对切分后的网页内容进行量化,方便科研人员进行后续的研究,同时提高网页爬取的效率,剔除与原始网页差异过大的网页内容。

卷积神经网络:

卷积神经网络(convolutionalneuralnetwork,cnn)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理和文本分类有出色表现。卷积神经网络由一个或多个卷积层和顶端的全连通层(对应经典的神经网络)组成,同时也包括关联权重和池化层(poolinglayer)。这一结构使得卷积神经网络能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网络在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网络,卷积神经网络需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。



技术实现要素:

发明目的:针对现有技术中存在的原始网页已经被网站管理员删除,无法爬取到指定内容;对原始网页切分爬取,网页内容发生改变,无法准确反映原始网页的内容的问题,本发明提出一种通过卷积神经网络,为研究人员在爬取网页和切分网页时提供与原始网页内容的对比结果的基于网页切分爬取的网络地址置信度评估方法。

技术方案:为解决上述技术问题,本发明提供一种基于网页切分爬取的网络地址置信度评估方法,具体步骤如下:

(1)先对网页链接进行分类,然后对已分类的网页链接按照“/”和“.”进行切分得到子网页链接,爬取子网页链接的网页信息,采用卷积神经网络对子网页链接进行分类,将子网页链接分类准确率与原始网页分类准确率相减得出网页分类差值集;

(2)将步骤(1)中网页分类差值低于0.5的数据置零,分别计算按照“/”和“.”切分的网页准确率的平均数,然后得到网络地址置信度权重f1和f2,将计算后的f1和f2带入网络地址置信度算法;

(3)统计待爬取的网页链接中“/”和“.”的数量,依次采用脚本访问待爬取网页,分别统计能够正常访问网页时“/”和“.”的数量,将处理后的网页链接放入已分类网页地址集,重新计算f1和f2的值,最后使用网络地址置信度算法计算待爬取网页的网络地址置信度。

进一步的,所述步骤(1)中得到网页分类差值集的具体步骤如下:

(1.1)定义网页地址集、网页分类集;

(1.2)对网页地址集中的url按照“/”进行切分,使用卷积神经网络计算切分后的分类准确率;

(1.3)对网页地址集中的url按照“.”进行切分,使用卷积神经网络计算切分后的分类准确率;

(1.4)定义原始网页准确率为1,将步骤(1.2)和步骤(1.3)得到的分类准确率与原始网页准确率相减,得到网页分类差值集。

进一步的,所述步骤(2)中得到网络地址置信度算法的具体步骤如下:

(2.1)定义一级、二级网页信息准确率差集、一级、二级网页权重;

(2.2)将一级网页信息准确率集和二级网页信息准确率集中小于0.5的数值修改为0;

(2.3)计算一级网页权重;

(2.4)计算二级网页权重;

(2.5)得到网络地址置信度算法公式。

进一步的,所述步骤(3)中得到待爬取网页的网络地址置信度的具体步骤如下:

(3.1)定义待爬取网页地址,统计地址中“/”和“.”的数量;

(3.2)使用脚本爬取待爬取网页地址的内容;

(3.3)在原始网页无法爬去的情况下,依次按照“/”、“.”对原网页进行切分后,爬取相关网页内容,并统计切分的次数;

(3.4)正常获取到网页内容后,将处理后的网页url加入已分类网页链接集,重新对一级网页权重和二级网页权重进行训练;

(3.5)按照步骤(2.5)得到的公式进行计算,得到待爬取网页网络地址置信度。

进一步的,所述步骤(1)中得到网页分类差值集的详细步骤如下:

(1.1)定义webpage为网页地址集,webpage={web1,web2,...webi},定义webca为网页分类集,webca={webca1,1,webca2,2,...,webcai,i},其中,webcai,i为第i个网页的网站类型;

(1.2)定义循环变量n用于遍历webpage,赋初值为1;

(1.3)当n<=i时,执行步骤(1.4);否则执行步骤(1.17);

(1.4)定义webn中的分隔符“/”的数量为num,将webi按照分隔符“/”切分为websp={websp1,websp2,…,websps},其中,s=num+1,定义处理后的webi为nws=websp1+“/”+websp2+…+“/”+websps;

(1.5)定义循环变量m用于遍历步骤(1.4)中得到的nws,赋初值为s;

(1.6)当m>1时,执行步骤(1.7);否则执行步骤(1.10);

(1.7)使用脚本爬取网页nwm的内容,得到网页内容集webinfo;

(1.8)使用卷积神经网络对步骤(1.7)得到的webinfo进行分类,得到分类准确率cp;定义webcan,n的分类准确率为1,得到nwm与webn分类准确率差值ctd=1-cp;

(1.9)m=m-1;

(1.10)定义webn中的分隔符“.”的数量为dum,将webi按照分隔符“.”切分为dwebsp={dwebsp1,dwebsp2,…,dwebspq},其中,q=dum+1,定义处理后的webi为dnwq=dwebsp1+“.”+dwebsp2+…+“.”+dwebspq;

(1.11)定义循环变量k用于遍历dnwq,赋初值为q;

(1.12)当k>2时,执行步骤(1.13);否则执行步骤(1.16);

(1.13)使用脚本爬取网页dnwk的内容,得到网页内容集dwebinfo;

(1.14)使用卷积神经网络对步骤(1.13)得到的dwebinfo进行分类,得到分类准确率dcp,计算dnwm与webn分类准确率差值dctd=1-dcp;

(1.15)k=k-1;

(1.16)n=n+1;

(1.17)得到处理后的网页分类准确率差值wdct={wdct1,1,wdct1,2,...wdcti,num+dum};其中,wdcti,num+dum为按照上述步骤得到的第num+dnum与原网页的分类准确率差值,num为步骤(1.4)得到的分隔符“/”的数量,dum为步骤(1.10)得到的分隔符“.”的数量。

进一步的,所述步骤(2)中得到网络地址置信度算法的详细步骤如下:

(2.1)定义一级网页权重为f1,定义二级网页权重为f2,定义一级网页信息准确率差fcd={fcd1,1,fcd1,2,...fcdi,num}=wdct-{wdct1,num+1,wdct1,num+2,

...wdcti,num+dum},定义二级网页准确率差值集scd={scd1,num+11,scd1,

num+2,...scdi,num+dum}=wdct-fcd;

(2.2)遍历一级网页信息准确率差集fcd,若值小于0.5,则将数据改为0,得到一级网页处理集fm;

(2.3)遍历二级网页信息准确率差集scd,若值小于0.5,则将数据改为0,得到一级网页处理集sm;

(2.4)计算,其中,num为步骤(1.4)得到的分隔符“/”的数量,fcdi,num为步骤(2.1)得到的一级网页信息准确率差集fcd中的元素,i为步骤(1.1)得到的共有i个网页;

(2.5)计算,其中,num为步骤(1.4)得到的分隔符“/”的数量,dum为步骤(1.10)得到的分隔符“.”的数量,scdi,num+1为步骤(2.1)得到的二级网页信息准确率差集scd中的元素,i为步骤(1.1)得到的共有i个网页;

(2.6)网络地址置信度公式,其中,sp为原始网页切割“/”的次数,dp为原始网页切割“.”的次数,f1为步骤(2.4)得到的数值,f2为步骤(2.5)得到的数值。

进一步的,所述步骤(3)中得到待爬取网页的网络地址置信度的具体步骤如下:

(3.1)定义待爬取网页地址为url,其中,url包含t个分隔符“/”和r个分隔符“.”;

(3.2)使用脚本爬取待爬取网页地址url,定义定义爬取标记get,get为0时,代表网页无法正常访问;

(3.3)当get=0时,执行步骤(3.4);否则执行步骤(3.10);

(3.4)对url按照“/”进行切割并访问,定义fst为切分网页的次数,定义爬取标记getfst,当getfst为0时,代表第fst次切分后的网页无法访问;

(3.5)当fst<=t时,执行步骤(3.6);否则执行步骤(3.7);

(3.6)当getfst=0时,执行步骤(3.4);否则执行步骤(3.7);

(3.7)对url按照“.”进行切割并访问,定义sst为切分网页的次数,定义爬取标记getsst,当getsst为0时,代表第sst次切分后的网页无法访问;

(3.8)当sst<=r时,执行步骤(3.9);否则执行步骤(3.10);

(3.9)当get=0时,执行步骤(3.7);否则执行步骤(3.10);

(3.10)将处理后的网页url加入webpage,重新对f1和f2进行训练;

(3.11)得到待爬取网络地址置信度,其中,fst为步骤(3.4)得到的切割“/”的次数,sst为步骤(3.7)得到的切割“.”的次数,f1为步骤(2.4)得到的数值,f2为步骤(2.5)得到的数值。

与现有技术相比,本发明的优点在于:

本发明方法利用卷积神经网络,对网页进行内容置信度评估,有效的增加了爬取网页的内容可信度,为网页分类提供了准确度参考值,量化了待爬取网页与原始网页内容的差异。具体的:本发明首先对已分类网页分别按照“/”和“.”进行切分后,使用脚本爬取切分后的网页内容,使用卷积神经网络得到切分后的网页分类准确率,将切分后的网页与原始网页分类准确率相减,得到网页分类准确率差集,按照“/”和“.”将网页分为一级网页和二级网页,并通过网页分类准确率差集得到对应的权重f1和f2,使用脚本爬取待测网页url的内容,并统计切分数量,将切分数量带入算法公式,得到最终爬取网页内容的网络地址置信度,提高了网页爬取的效率,量化了切分网页与原始网页内容的差异。此外,本发明提出了一种自适应的权重计算方法,提高了网络地址置信度的各权重的准确度。

附图说明

图1为本发明的总体流程图;

图2为图1中网页切分和子网页分类准确度差计算流程图;

图3为图1中计算分级网页信息权重流程图;

图4为图1中待测网页网络地址置信度评估和权重自适应学习流程图。

具体实施方式

下面结合附图和具体实施方式,进一步阐明本发明。

如图1-4示,本发明包括如下步骤:

步骤一:对已分类的网页链接按照“/”和“.”进行切分,得到子网页链接,爬取子网页链接的网页信息,采用卷积神经网络对子网页链接进行分类,将子网页链接分类准确率与原始网页分类准确率相减,得到网页分类差值集,具体的如图2所示:

步骤1.1:定义webpage为网页地址集,webpage={web1,web2,...webi},定义webca为网页分类集,webca={webca1,1,webca2,2,...,webcai,i},其中,webcai,i为第i个网页的网站类型;

步骤1.2:定义循环变量n用于遍历webpage,赋初值为1;

步骤1.3:当n<=i时,执行步骤1.4;否则执行步骤1.17;

步骤1.4:定义webn中的分隔符“/”的数量为num,将webi按照分隔符“/”切分为websp={websp1,websp2,…,websps},其中,s=num+1,定义处理后的webi为nws=websp1+“/”+websp2+…+“/”+websps;

步骤1.5:定义循环变量m用于遍历步骤1.4中得到的nws,赋初值为s;

步骤1.6:当m>1时,执行步骤1.7;否则执行步骤1.10;

步骤1.7:使用脚本爬取网页nwm的内容,得到网页内容集webinfo;

步骤1.8:使用卷积神经网络对步骤1.7得到的webinfo进行分类,得到分类准确率cp。定义webcan,n的分类准确率为1,得到nwm与webn分类准确率差值ctd=1-cp;

步骤1.9:m=m-1;

步骤1.10:定义webn中的分隔符“.”的数量为dum,将webi按照分隔符“.”切分为dwebsp={dwebsp1,dwebsp2,…,dwebspq},其中,q=dum+1,定义处理后的webi为dnwq=dwebsp1+“.”+dwebsp2+…+“.”+dwebspq;

步骤1.11:定义循环变量k用于遍历dnwq,赋初值为q;

步骤1.12:当k>2时,执行步骤1.13;否则执行步骤1.16;

步骤1.13:使用脚本爬取网页dnwk的内容,得到网页内容集dwebinfo;

步骤1.14:使用卷积神经网络对步骤1.13得到的dwebinfo进行分类,得到分类准确率dcp,计算dnwm与webn分类准确率差值dctd=1-dcp;

步骤1.15:k=k-1;

步骤1.16:n=n+1;

步骤1.17:得到处理后的网页分类准确率差值集wdct={wdct1,1,wdct1,2,...wdcti,num+dum}。其中,wdcti,num+dum为按照上述步骤得到的第num+dnum与原网页的分类准确率差值,num为步骤1.4得到的分隔符“/”的数量,dum为步骤1.10得到的分隔符“.”的数量。

步骤二:将网页分类差值集中低于0.5的数据置零,分别计算按照“/”和“.”切分的网页准确率的平均数,得到网络地址置信度权重f1和f2,将计算后的f1和f2带入网络地址置信度算法,具体的如图3所示:

步骤2.1:定义一级网页权重为f1,定义二级网页权重为f2,定义一级网页信息准确率差集fcd={fcd1,1,fcd1,2,...fcdi,num}=wdct-{wdct1,num+1,wdct1,num+2,...wdcti,num+dum},定义二级网页准确率差值集scd={scd1,num+11,scd1,num+2,...scdi,num+dum}=wdct-fcd;

步骤2.2:遍历一级网页信息准确率差集fcd,若值小于0.5,则将数据改为0,得到一级网页处理集fm;

步骤2.3:遍历二级网页信息准确率差集scd,若值小于0.5,则将数据改为0,得到一级网页处理集sm;

步骤2.4:计算其中,num为步骤1.4得到的分隔符“/”的数量,fcdi,num为步骤2.1得到的一级网页信息准确率差集fcd中的元素,i为步骤1.1得到的共有i个网页;

步骤2.5:计算其中,num为步骤1.4得到的分隔符“/”的数量,dum为步骤1.10得到的分隔符“.”的数量,scdi,num+1为步骤2.1得到的二级网页信息准确率差集scd中的元素,i为步骤1.1得到的共有i个网页;

步骤2.6:网络地址置信度公式webhealth=1-(sp)(f1)-(dp)(f2),其中,sp为原始网页切割“/”的次数,dp为原始网页切割“.”的次数,f1为步骤2.4得到的数值,f2为步骤2.5得到的数值。

步骤三:统计待爬取的网页链接中“/”和“.”的数量,依次采用脚本访问待爬取网页,分别统计能够正常访问网页时“/”和“.”的数量,将处理后的网页链接放入已分类网页地址集,重新计算f1和f2的值,最后,使用网络地址置信度算法计算待爬取网页的网络地址置信度,具体的如图4所示:

步骤3.1:定义待爬取网页地址为url,其中,url包含t个分隔符“/”和r个分隔符“.”;

步骤3.2:使用脚本爬取待爬取网页地址url,定义定义爬取标记get,get为0时,代表网页无法正常访问;

步骤3.3:当get=0时,执行步骤3.4;否则执行步骤3.10;

步骤3.4:对url按照“/”进行切割并访问,定义fst为切分网页的次数,定义爬取标记getfst,当getfst为0时,代表第fst次切分后的网页无法访问;

步骤3.5:当fst<=t时,执行步骤3.6;否则执行步骤3.7;

步骤3.6:当getfst=0时,执行步骤3.4;否则执行步骤3.7;

步骤3.7:对url按照“.”进行切割并访问,定义sst为切分网页的次数,定义爬取标记getsst,当getsst为0时,代表第sst次切分后的网页无法访问;

步骤3.8:当sst<=r时,执行步骤3.9;否则执行步骤3.10;

步骤3.9:当get=0时,执行步骤3.7;否则执行步骤3.10;

步:3.10:将处理后的网页url加入webpage,重新对f1和f2进行训练;

步骤3.11:得到待爬取网络地址置信度webhealthurl=1-(fst)(f1)-(sst)(f2),其中,fst为步骤3.4得到的切割“/”的次数,sst为步骤3.7得到的切割“.”的次数,f1为步骤2.4得到的数值,f2为步骤2.5得到的数值。

为了更好的说明本方法的有效性,抽取10000条已经分类的网页url进行分析。首先将10000条网页进行切分,使用卷积神经网络对切分后的网页进行分类,并计算得到f1和f2分别为0.4和0.6。采用直接访问网页的方法获取网页内容并进行分类,能够获取到534个准确度在90%以上的网页,占总数的5.34%,消耗时间162分钟;采用切分后直接访问网页的方法获取网页内容并进行分类,能够获取到3540个准确度在90%以上的网页,占总数的35.40%,消耗时间486分钟;采用本发明方法的步骤,在切分网页后,先获取切分网页的网络地址置信度,当高于0.5时进行网页内容的爬取,能够获取到3649个准确度在90%以上的网页,占总数的36.49%,消耗时间58分钟,相比直接访问准确率提高了51.48%,消耗时间缩短了2.79倍;相比切分后直接分类准确率提高了1.09%,消耗时间缩短了8.37倍。

以上所述仅为本发明的实施例子而已,并不用于限制本发明。凡在本发明的原则之内,所作的等同替换,均应包含在本发明的保护范围之内。本发明未作详细阐述的内容属于本专业领域技术人员公知的已有技术。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1