[发明专利]一种有效链接获取的网页增量抓取方法有效
| 申请号: | 201510185493.5 | 申请日: | 2015-04-17 |
| 公开(公告)号: | CN104794193B | 公开(公告)日: | 2018-04-03 |
| 发明(设计)人: | 张雷;刘有力;资帅;韩军华;冯瀚洋;谢俊元 | 申请(专利权)人: | 南京大学 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 南京瑞弘专利商标事务所(普通合伙)32249 | 代理人: | 陈建和 |
| 地址: | 210093 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 有效 链接 获取 网页 增量 抓取 方法 | ||
技术领域:
本发明涉及一种基于无效链接过滤的有效网页链接获取方法,以及对获取的有效网页链接增量抓取的技术。
背景技术:
互联网技术的高速发展以及智能移动终端的迅速普及,使得信息呈现爆炸式的增长,也给快速、高效的从互联网中抓取所需信息带来新的挑战。
传统网页信息抓取通常采用深度或广度遍历的抓取方式,从指定的网页链接开始逐层信息抓取,并提取每层中的URL链接作为下一层抓取的起始链接。由于网页中链接并非都指向有用的信息,如网页中的菜单、广告、页脚等,如果不能有效的过滤无效链接将抓取大量的无效信息,降低网页抓取的准确性和效率。同时,无效链接间的相互指向将导致抓取过程陷于无限循环。
由于互联网中信息更新速度快,网页信息需要定时重新抓取。在重新抓取过程中需要快速判断链接是否已经抓取,避免重复网页信息抓取。网页URL具有唯一性,在抓取过程中维持一个已抓取网页URL集合,重新抓取时判断待抓取网页URL是否在该集合中便可判断该网页信息是否已经抓取。随着抓取数量增大,判断URL是否在已抓取URL集合将严重影响效率。
本发明实现了一种网页中无效链接过滤来获取网页中有效链接集合,并通过将网页URL随机哈希到布隆过滤器位图集合中来实现已抓取网页URL快速、高效的判断,从而增量抓取网页信息。
发明内容:
本发明要解决的技术问题是,实现网页中有效链接获取,并同过布隆过滤器维持已抓取链接集合,以高效、实时的增量抓取网页信息。
针对上述技术问题,本发明的技术方案是,有效链接获取的网页增量抓取方法,包括如下步骤:
1)有效链接获取阶段:
a初始化抓取网页链接,指定抓取入口URL;
b判断入口网页链接是否具有分页;
c计算入口网页与其分页的公共链接;
d通过公共链接获取有效链接;
e结束。
2)增量抓取阶段:
a构建布隆过滤器,并通过布隆过滤器判断步骤1)-d中有效网页链接是否已经抓取;
b通过HTTP请求抓取未抓取的网页;
c结束。
步骤1)-a中抓入口URL是指抓取程序以此URL开始逐层抓取。
步骤1)-b中分页是指在网页中由于信息太多采用分页形式显示,每一页显示一部分信息。分页的具体判断方法如下:
1)获取入口URL页面中所有的链接,保存集合PageAllUrl中;
2)通过匹配PageAllUrl中每个URL链接文本中是否为“下一页”或“下页”等分页标志来判断是否有分页。
步骤1)-c中公共链接是指入口URL页面与其分页网页中相同的URL,其具体计算方法如下:
1)获取入口URL分页网页中所有的链接,保存集合NextPageAllUrl中;
2)比较集合PageAllUrl和集合NextPageAllUrl,找出它们相同的URL并保存在集合CommonUrl中,即公共链接集合CommonUrl=PageAllUrl∩NextPageAllUrl。
步骤1)-d中有效链接是指非菜单、导航、广告等无效链接,其具体方法如下:
1)在步骤1)-b中判断入口URL是否具有分页,如有执行2),否则执行3);
2)从集合PageAllUrl中链接去掉集合CommonUrl中链接,并将结果保存在集合EffectiveUrl中,即有效链接集合EffectiveUrl=PageAllUrl-CommonUrl;
3)分析入口URL链接,获取其主机域名HostUrl;
4)判断集合PageAllUrl是否为空,如果不为空则执行5),否则执行8);
5)从集合PageAllUrl中取出一个Url;
6)判断Url是否是入口URL的前缀,如果是则执行7),否则执行4);
7)将Url加入有效链接集合EffectiveUrl中,执行4);
8)结束。
步骤2)-a和2)-b中构建布隆过滤器是指设定布隆过滤器的大小、误判率以及随机哈希函数。本发明设置其大小为90000000,误判率为0.000001,随机哈希函数为MD5Hash。其判断方法具体如下:
1)初始化布隆过滤器BloomFilter;
2)判断集合EffectiveUrl是否为空,如果不为空则执行3),否则执行7);
3)从集合EffectiveUrl中取出一个Url;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510185493.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:网络地图泛区域搜索方法
- 下一篇:文件定位方法及装置





