网络爬虫是哪些?网络爬虫是怎样工作的?
优采云 发布时间: 2020-05-02 08:08
摘要:一篇文章了解爬虫的前世今生与未来
什么是网络爬虫?
网络爬虫,也称为网页抓取和网页数据提取,基本上是指通过超文本传输协议(HTTP)或通过网页浏览器获取万维网上可用的数据。(摘自Wikipedia)
网络爬虫是怎样工作的?
通常,爬取网页数据时,只须要2个步骤。
打开网页→将具体的数据从网页中复制并导入到表格或数据库中。
这一切是怎么开始的?
尽管对许多人来说,网络爬虫听上去象是“大数据”或“机器学习”一类的新概念,但实际上,网络数据抓取的历史要长得多,可以溯源到万维网(或浅显的“互联网”)诞生之时。
一开始,互联网还没有搜索。在搜索引擎被开发下来之前,互联网只是文件传输协议(FTP)站点的集合,用户可以在这种站点中导航以找到特定的共享文件。
为了查找和组合互联网上可用的分布式数据,人们创建了一个自动化程序,称为网络爬虫/机器人,可以抓取互联网上的所有网页,然后将所有页面上的内容复制到数据库中制做索引。
随后,互联网发展上去,最终有数百万级的网页生成,这些网页包含大量不同的方式的数据,其中包括文本、图像、视频和音频。互联网弄成了一个开放的数据源。
随着数据资源显得十分丰富且容易搜索,人们发觉从网页上找到她们想要的信息是一件极其简单的事情,他们一般分布在大量的网站上。但另一个问题出现了,当她们想要数据的时侯,并非每位网站都提供下载按键,如果进行自动复制其实是极其低效且平庸的。
这就是网路爬虫诞生的诱因。网络爬虫实际上是由网页机器人/爬虫驱动的,其功能与搜索引擎相同。简单来说就是,抓取和复制。唯一的不同可能是规模。网络数据抓取是从特定的网站提取特定的数据,而搜索引擎一般是在万维网上搜索出大部分的网站。
时间轴
1989年万维网的诞生
从技术上讲,万维网和因特网有所不同。前者是指信息空间,后者是由数台计算机联接上去的内部网路。
感谢Tim Berners-Lee,万维网的发明者,他发明的三件东西,往后成为了我们日常生活中的一部分。
1990年第一个网络浏览器
它也由Tim Berners-Lee发明,被称为WorldWide网页(无空间),以WWW项目命名。在网路出现一年后,人们有了一条途径去浏览它并与之互动。
1991年第一个网页服务器和第一个 网页页面
网页的数目以缓慢的速率下降。到1994年,HTTP服务器的数目超过200台。
1993年6月第一台网页机器人——万维网漫游器
虽然它的功能和昨天的网页机器人一样,但它只是拿来检测网页的大小。
1993年12月首个基于爬虫的网路搜索引擎—JumpStation
由于当时网路上的网站并不多,搜索引擎过去经常依赖人工网站管理员来搜集和编辑链接,使其成为一种特定的格式。
JumpStation带来了新的飞越。它是第一个借助网路机器人的WWW搜索引擎。
从那时起,人们开始使用这种程序化的网路爬虫程序来搜集和组织互联网。从Infoseek、Altavista和Excite,到现在的必应和微软,搜索引擎机器人的核心依旧保持不变:
找到一个网页页面,下载(获取)它,抓取网页页面上显示的所有信息,然后将其添加到搜索引擎的数据库中。
由于网页页面是为人类用户设计的,不是为了自动化使用,即使开发了网页机器人,计算机工程师和科学家一直很难进行网路数据抓取,更不用说普通人了。因此,人们仍然致力于让网路爬虫显得愈发容易使用。
2000年网页API和API爬虫
API表示应用程序编程插口。它是一个插口,通过提供搭建好的模块,使开发程序愈加方便。
2000年,Salesforce和eBay推出了自己的API,程序员可以用它访问并下载一些公开数据。
从那时起,许多网站都提供网页API使人们可以访问她们的公共数据库。
发送一组HTTP请求,然后接收JSON或XML的回馈。
网页API通过搜集网站提供的数据,为开发人员提供了一种更友好的网路爬虫形式。
2004 年Python Beautiful Soup
不是所有的网站都提供API。即使她们提供了,他们也不一定会提供你想要的所有数据。因此,程序员们仍在开发一种才能建立网路爬虫的方式。
2004年,Beautiful Soup发布。它是一个为Python设计的库。
在计算机编程中,库是脚本模块的集合,就像常用的算法一样,它容许不用重画就可以使用,从而简化了编程过程。
通过简单的命令,Beautiful Soup可以理解站点的结构,并帮助从HTML容器中解析内容。它被觉得是用于网路爬虫的最复杂和最先进的库,也是现今最常见和最流行的方式之一。
2005-2006年网路抓取软件的可视化
2006年,Stefan Andresen和他的Kapow软件(Kofax于2013年竞购)发布了网页集成平台6.0版本,这是一种可视化的网路爬虫软件,它容许用户轻松简单的选择网页内容,并将这种数据构造成可用的excel文件或数据库。
最终,可视化的网路数据抓取软件可以使大量非程序员自己进行网路爬虫。
从那时起,网络抓取开始成为主流。现在,对于非程序员来说,他们可以很容易地找到80多个可提供可视化过程的的数据采集软件。
网络爬虫未来将怎样发展?
我们总是想要更多的数据。我们搜集数据,处理数据,并把数据转换成各种各样的成品,比如研究,洞察剖析,信息,故事,资产等等。我们过去经常耗费大量的时间、精力和金钱在找寻和搜集数据上,以至于只有大公司和组织能够负担得起。
在2018年,我们所知的万维网网络爬虫技术是什么,或浅显的“互联网”,由超过18亿个网站组成。只需点击几下键盘,就可以获得这么巨大的数据量。随着越来越多的人上网,每秒形成的数据也越来越多。
如今,是一个比历史上任何时期都要便捷的时代。任何个人、公司和组织都还能获得她们想要的数据,只要这种数据在网页上是公开可用的。
多亏了网路爬虫/机器人、API、标准数据库和各类开箱即用的软件,一旦有人有了获取数据的意愿,就有了获取数据的方式。或者,他们也可以求救于这些她们接触得到又支付的起费用的专业人士。
在自由职业任务平台guru.com上搜索“网络爬虫”时,你可以得到10088个搜索结果,这意味着超过10000名自由职业者在这个网站上提供网路抓取服务。
而在同类的网站,Upwork上的搜索结果有13190个,fievere.com上的结果是1024个。
各行各业的公司对网路数据的需求不断下降,推动了网路抓取行业的发展,带来了新的市场、就业机会和商业机会。
与此同时,与其他新兴行业一样,网络抓取也伴随着法律方面的疑虑。
围绕网路爬虫合法性的讨论情况仍存在。它的合法与否与具体案例背景相关。目前,这种趋势下诞生的许多有趣的法律问题一直没有得到解答,或者取决于十分具体的案例背景。
虽然网路抓取早已存在了太长一段时间,但法庭才刚才开基础大数据相关的法律理论的应用。
由于与网路爬取和数据抓取的仍处于发展阶段,所以它的发展一直未稳定出来且难以预测。然而,有一件事是肯定的,那就是,只要有互联网,就有网路抓取。
是网路抓取使新生的互联网显得可以搜索,使爆炸式下降的互联网显得愈发容易访问和获取。
毫无疑问网络爬虫技术是什么,在可预见的未来,互联网和网路抓取,将继续稳定地往前迈向。