三种开源网路爬虫性能比较
优采云 发布时间: 2020-06-05 08:020 引 言
在信息化时代,针对通用搜索引擎信息量大、查询准度和深度兼差等缺点,垂直搜索引擎已步入了用户认可和使用周期。垂直搜索是针对某一个行业的专业搜索引擎,是对网页库中的某类专门的信息进行一次整合,定向分数组抽取出须要的数据进行处理后再以某种方式返回给用户[1].相比通用搜索引擎则变得愈发专注、具体和深入。目前,垂直搜索引擎多用于行业信息获取和特色语料库建设等方面,且已卓见现实深远成效。
网络爬虫是一个手动提取和手动下载网页的程序开源网络爬虫,可为搜索引擎从互联网上下载网页,并按照既定的抓取目标,有选择地访问互联网上的网页与相关的链接,获取所须要的信息。按照功能用途,网络爬虫分为通用爬虫和聚焦爬虫,这是搜索引擎一个核心组成部份。
1 聚焦爬虫的工作原理及关键技术剖析
1. 1 聚焦爬虫的工作原理
聚焦爬虫是专门为查询某一主题而设计的网页采集工具,并不追求大范围覆盖,而是将目标预定为抓取与某一特定主题内容相关的网页,如此即为面向主题的用户查询打算数据资源。垂直搜索引擎可借助其实现对网页主题信息的挖掘以及发觉,聚焦爬虫的工作原理是:
( 1) 爬虫从一个或若干起始网页 URL 链接开始工作;( 2) 通过特定的主题相关性算法判定并过滤掉与主题无关的链接;( 3) 将有用链接加入待抓取的 URL 队列;( 4) 根据一定的搜索策略从待抓取 URL 队列中选择下一步要抓取的网页 URL.重复以上步骤,直至满足退出条件时停止[2].
1. 2 聚焦爬虫的几个关键技术
根据聚焦爬虫的工作原理,在设计聚焦爬虫时,需要考虑问题可做如下阐述。
1. 2. 1 待抓取网站目标的定义与描述的问题
开发聚焦爬虫时,应考虑对于抓取目标的定义与描述,究竟是带有目标网页特点的网页级信息,还是针对目标网页上的结构化数据。前者因其具有结构化的数据信息特点,在爬虫抓取信息后,还需从结构化的网页中抽取相关信息; 而对于前者,爬虫则直接解析 Web 页面,提取并加工相关的结构化数据信息,该类爬虫以便订制自适应于特定网页模板的结果网站。
1. 2. 2 爬虫的 URL 搜索策略问题
开发聚焦爬虫时,常见的 URL 搜索策略主要包括深度优先搜索策略、广度优先搜索策略、最佳优先搜索策略等[3].在此给出对应策略的规则剖析如下。
( 1) 深度优先搜索策略
该搜索策略采用了后进先出的队列形式,从起始 URL出发,不停搜索网页的下一级页面直到最后无 URL 链接的网页页面结束; 爬虫再回到起始 URL 地址,继续追寻 URL的其它 URL 链接,直到不再有 URL 可搜索为止,当所有页面都结束时,URL 列表即根据插叙的方法将搜索的 URL 队列送入爬虫待抓取队列。
( 2) 广度优先搜索策略
该搜索策略采用了先进先出的队列形式,从起始 URL出发,在搜索了初始 Web 的所有 URL 链接后,再继续搜索下一层 URL 链接,直至所有 URL 搜索完毕。URL 列表将依照其步入队列的次序送入爬虫待抓取队列。
( 3) 最佳优先搜索策略
该搜索策略采用了一种局部优先搜索算法,从起始 URL出发,按照一定的剖析算法,对页面候选的 URL 进行预测,预测目标网页的相似度或主题相关性,当相关性达到一定的阀值后,URL 列表则根据相关数值高低次序送入爬虫待抓取队列。
1. 2. 3 爬虫对网页页面的剖析和主题相关性判定算法
聚焦爬虫在对网页 Web 的 URL 进行扩充时,还须要对网页内容进行剖析和信息的提取开源网络爬虫,用以确定该获取 URL 页面是否与采集的主题相关。目前常用的网页的剖析算法包括: 基于网路拓扑、基于网页内容和基于领域概念的剖析算法[4].下面给出这三类算法的原理实现。
( 1) 基于网路拓扑关系的剖析算法
基于网路拓扑关系的剖析算法就是可以通过已知的网页页面或数据,对与其有直接或间接链接关系的对象做出评价的实现过程。该算法又分为网页细度、网站粒度和网页块细度三种。着名的 PageRank 和 HITS 算法就是基于网路拓扑关系的典型代表。
( 2) 基于网页内容的剖析算法
基于网页内容的剖析算法指的是借助网页内容( 文本、数据等资源) 特征进行的网页评价。该方式已从最初的文本检索方式,向网页数据抽取、数据挖掘和自然语言等多领域方向发展。
( 3) 基于领域概念的剖析算法
基于领域概念的剖析算法则是将领域本体分解为由不同的概念、实体及其之间的关系,包括与之对应的词汇项组成。网页中的关键词在通过与领域本体对应的辞典分别转换以后,将进行计数和加权,由此得出与所选领域的相关度。