9.1.1 网络爬虫的定义

9.1.1 网络爬虫的定义

似乎一瞬间,全世界都在讨论网络爬虫。随着网络的迅速发展,大数据时代到来,人类社会的数据正以前所未有的速度增长。数据中蕴含着巨大的价值,无论是对工作、生活,还是对企业未来的发展和创新商业模式,都有着很大的帮助。充分挖掘数据潜在价值,能帮助人们找到更合适的合作对象、更便宜的生活用品,也能帮助企业找到更精准的市场定位。

数据背后隐藏的巨大商业价值越来越被人们重视,那么数据从何而来?

如何有效地提取并利用数据很大程度上取决于解决问题的效率。搜索引擎作为辅助程序员检索信息的工具已经有些力不从心了。为了更高效、全面、准确地获取指定信息,需要定向抓取并分析网页资源,这就需要应用网络爬虫。

网络爬虫是一种程序,编写网络爬虫的主要目的是将互联网上的网页下载到本地并提取相关数据。网络爬虫可以自动化抓取网络中的信息,然后根据制定的规则下载和提取信息。

如果把互联网看成一个蜘蛛网,那么网络爬虫就是在网上爬来爬去的蜘蛛。它的主要任务一是下载目标网页,二是从目标网页中提取需要的数据。

网络爬虫按照系统结构和实现技术,大致可以分为以下类型。

·通用网络爬虫:也称为全网爬虫。爬行对象从一些种子URL扩充到整个Web,主要为门户站点、搜索引擎和大型Web服务提供商采集数据。

·聚焦网络爬虫:聚焦网络爬虫是指选择性地爬行那些预先定义好的主题相关页面的网络爬虫。与通用网络爬虫相比,聚焦网络爬虫只需要爬行与主题相关的页面,极大地节省了硬件和网络资源,保存的页面也因数量少而更新快。聚集网络爬虫还可以很好地满足一些特定人群对特定领域信息的需求。

·增量式网络爬虫:是指对已下载网页采取增量式更新和只爬行新产生的或者已经发生变化的网页的爬虫,它能够在一定程度上保证所爬行的页面是尽可能新的页面。与周期性爬行和刷新页面的网络爬虫相比,增量式网络爬虫只会在需要的时候爬行新产生或发生更新的页面,并不重新下载没有发生变化的页面,这样可以有效地减小数据下载量,及时更新已爬行的网页,减少时间和空间上的耗费,但是这种方式增加了爬行算法的复杂度和实现难度。

·深层页面爬虫:Web页面按存在的方式分为表层网页和深层网页。表层网页就是传统搜索引擎可以搜索到的页面,是以超链接的静态页面为主构成的Web页面。深层网页大部分内容不能通过静态链接获取,隐藏在搜索表单后,深层网页是只有用户提交了一些关键词后才能获得的Web页面。例如,有些网页内容只有在用户登录之后才能看见,这种网页就属于深层页面。