用于抓取网络商城中网页的爬虫算法的制作方法

文档序号:6385393阅读:327来源:国知局
专利名称:用于抓取网络商城中网页的爬虫算法的制作方法
技术领域
本发明涉及网页搜索技术领域,特别是一种用于抓取网络商城中网页的爬虫算法。
背景技术
网络商城是以互联网为运营载体,依托互联网资源,利用电子商务的各种手段,达成从买到卖的过程的虚拟商店,从而减少中间环节,消除运输成本和代理中间的差价,造就对普通消费和加大市场流通带来巨大的发展空间。
网络商城24小时都可以进行商品的浏览与购买,工作时间可以随时与客服进行交流,解决购物中遇到的困难;其信息量大,能够让顾客更多的了解,增加了选择的空间; 其客户无限,全球的任何人都可以通过Internet访问,不受空间限制;其服务优质,不但可以完成普通商店可以进行的所有交易,同时它还可以通过多媒体技术为用户提供更加全面的商品信息;其成本低廉,由于省去了店面费用,所以总体的成本降低很多,所以表现在消费品上的价格也会相对传统店面便宜很多。同时因为是大批量取货后分销的形式,所以价格优势比较明显。
网络商城虽然有其优势的地方,但是也有其劣势。网上商店对货物的描述很具有迷惑性,主要在于顾客无法直接看到和触摸到商品,全凭店主的描述来购物。顾客无法判断货物是否从正规渠道而来,或者是否为正品。若为仿制品,消费者的维权之路往往很漫长。 网上商店对卖家的审核往往有很大的局限性,也会导致假冒伪劣产品泛滥。长期下来会引发大量对网上商店的负面评论,影响网上商店的长远发展。发明内容
本发明的目的在于提供一种用于抓取网络商城中网页的爬虫算法,该算法有利于对网络商城中与主题相关的网页进行精确抓取,而且算法设计合理,运行效果好。
为实现上述目的,本发明的技术方案是一种用于抓取网络商城中网页的爬虫算法,包括以下步骤步骤I:设置抓取的宽度、深度以及总数,所述宽度表示不相关页面链接允许访问的数目,所述深度表示还可以沿着链接继续往前访问的深度,所述总数表示访问网页总数上限值S ;输入初始链接;步骤2 :建立url队列,所述url队列用于存储要爬取的初始链接,将url种子集添加到所述url队列中;可以把若干网上商城的域名作为url的入口,得到所述url种子集; 步骤3 :若访问页面数小于访问网页总数上限值S,或者url队列的长度不为零,即url 队列不为空,则根据所述初始链接下载对应的页面,否则结束;步骤4 :抽取被新爬取到的链接到list队列中,并计算页面与主题的相关度,然后保存下载到的页面;所述list队列用于存储爬取到的链接;步骤5 :判断页面的深度,若页面的深度大于零,则执行步骤6,否则返回步骤3 ; 步骤6:判断页面是否与主题相关,若与主题相关,则增加所述页面前向链接的链接值,否则降低所述页面前向链接的链接值;
步骤7 :判断url是否在list队列中,若在list队列中,则执行步骤8,否则返回到步骤3;
步骤8 :判断url是否在url队列中,若在url队列中,比较url队列的相关系数和list队列的相关系数的大小,两者中较大的取代url队列中的相关系数;否则按照相关系数的大小插入到url队列中;
步骤9 :若当前页面相关,则深度为depth (page),否则深度为depth (page) -1,depth (page)指当前页面的深度;
步骤10 :从list队列中取出下一条url,然后从步骤7开始执行;
步骤11 :算法结束,输出主题相关网页。本发明的有益效果是能够根据输入的网络商城初始链接,在网络商城中对与主题相关的网页进行搜索、判断,进而实现对主题相关网页的精确抓取。此外,该算法程序设计合理,使用效果好,可广泛应用于各种网络商城的网页抓取。下面结合附图及具体实施例对本发明作进一步的详细说明。


图1是本发明实施例的工作流程图。
具体实施例方式本发明用于抓取网络商城中网页的爬虫算法,如图1所示,包括以下步骤
步骤1:设置抓取的宽度、深度以及总数,所述宽度表示不相关页面链接允许访问的数目,所述深度表示还可以沿着链接继续往前访问的深度,所述总数表示访问网页总数上限值S ;输入初始链接;
步骤2 :建立url队列,所述url队列用于存储要爬取的初始链接,将url种子集添加到所述url队列中;可以把若干网上商城的域名作为url的入口,得到所述url种子集;步骤3 :若访问页面数小于访问网页总数上限值S,或者url队列的长度不为零,即url队列不为空,则根据所述初始链接下载对应的页面,否则结束;
步骤4 :抽取被新爬取到的链接到list队列中,并计算页面与主题的相关度,然后保存下载到的页面;所述list队列用于存储爬取到的链接;
步骤5 :判断页面的深度,若页面的深度大于零,则执行步骤6,否则返回步骤3 ;
步骤6:判断页面是否与主题相关,若与主题相关,则增加所述页面前向链接的链接值,否则降低所述页面前向链接的链接值;
步骤7 :判断url是否在list队列中,若在list队列中,则执行步骤8,否则返回到步骤3;
步骤8 :判断url是否在url队列中,若在url队列中,比较url队列的相关系数和list队列的相关系数的大小,两者中较大的取代url中排队队列的相关系数;否则按照相关系数的大小插入到url队列中;
步骤9 :若当前页面相关,则深度为depth (page),否则深度为depth (page) -1,depth (page)指当前页面的深度;步骤10 :从list队列中取出下一条url,然后从步骤7开始执行; 步骤11 :算法结束,输出主题相关网页。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
权利要求
1.一种用于抓取网络商城中网页的爬虫算法,其特征在于包括以下步骤步骤I:设置抓取的宽度、深度以及总数,所述宽度表示不相关页面链接允许访问的数目,所述深度表示还可以沿着链接继续往前访问的深度,所述总数表示访问网页总数上限值S ;输入初始链接;步骤2 :建立url队列,所述url队列用于存储要爬取的初始链接,将url种子集添加到所述urI队列中;步骤3 :若访问页面数小于访问网页总数上限值S,或者url队列的长度不为零,即url 队列不为空,则根据所述初始链接下载对应的页面,否则结束;步骤4 :抽取被新爬取到的链接到list队列中,并计算页面与主题的相关度,然后保存下载到的页面;所述list队列用于存储爬取到的链接;步骤5 :判断页面的深度,若页面的深度大于零,则执行步骤6,否则返回步骤3 ;步骤6:判断页面是否与主题相关,若与主题相关,则增加所述页面前向链接的链接值,否则降低所述页面前向链接的链接值;步骤7 :判断url是否在list队列中,若在list队列中,则执行步骤8,否则返回到步骤3;步骤8 :判断url是否在url队列中,若在url队列中,比较url队列的相关系数和list 队列的相关系数的大小,两者中较大的取代url队列中的相关系数;否则按照相关系数的大小插入到url队列中;步骤9 :若当前页面相关,则深度为depth (page),否则深度为depth (page) -I, depth (page)指当前页面的深度;步骤10 :从list队列中取出下一条url,然后从步骤7开始执行;步骤11 :算法结束,输出主题相关网页。
全文摘要
本发明涉及一种用于抓取网络商城中网页的爬虫算法,该算法根据初始链接采集网络商城上的页面,将页面下的种子集添加到url队列中;根据初始链接下载页面,并将新链接添加到list队列中,且对页面进行相关度的计算。根据页面的深度,以及页面与主题的相关程度,设置相应的链接值;对于存在list队列和url队列中的url,比较url队列的潜在系数和list队列的潜在系数,来对url队列的潜在系数进行更新;对于存在list队列但不在url队列中的url,按照潜在系数插入到url队列中;最后根据当前页面的相关程度,对深度进行设置。该算法有利于对网络商城中与主题相关的网页进行精确抓取,而且算法设计合理,运行效果好。
文档编号G06F17/30GK102982184SQ201210571819
公开日2013年3月20日 申请日期2012年12月26日 优先权日2012年12月26日
发明者陈志德 申请人:福建师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1