您是否认为搜寻和抓取是一样的,并且可以互换使用?您可能需要注意它们是不同的。现在就来发现两者之间的区别和相似之处。

当今行业中最容易混淆的两个词是爬行和抓取。如果您阅读了很多有关机器学习和数据聚合的文章,那么您一定会碰到两者可以互换使用。对许多人来说,它们是相同的,一个词与另一个词同义。但是它们是一样的吗?它们有什么区别?它们有何相似之处?在本文中,您将学习有关Web爬行和Web抓取之间的区别和相似之处。

我必须承认: 我在某些文章中互换使用了这两个词。这是因为某些Web抓取任务中存在一些抓取,并且抓取是抓取过程中不可或缺的一部分。但是,当您深入了解每种含义以及最终期望时,您会发现它们是不同的。在讨论“搜寻和抓取”时,首先要讨论它们之间的差异,然后通过讨论它们的相似性来结束本文。


爬行和刮擦之间的差异

爬行和刮擦似乎是相同的。但是,在经历了它们之间存在的差异之后,您会发现它们并不相同。这些差异中的一些将在下面讨论。


定义


  • 网页抓取

网页抓取是从网页中提取特定数据的过程。它涉及到这样一个过程:发送web请求并获得作为响应返回的web页面,然后在剩下所有其他内容时对其进行解析以提取所需的数据。用于web抓取的工具被称为web scraper。Web抓取是高度专业化的,在它感兴趣的页面上有特定的数据抓取。在大多数情况下,在进行web抓取项目时,您事先会有一个url形式的web页面列表,并且了解HTML以及web页面是如何编码的。

尽管某些网络抓取工具使用人工智能和机器学习来检测特定数据,但是大多数网络抓取工具都是特定于站点的,并且必须已检查页面的HTML并根据检查的HTML对网络抓取工具进行编码。HTML更改时,代码将中断,需要进行修复才能继续工作。在其中进行网页抓取的示例包括提取股票价格,天气数据,联系方式以及任何其他用户生成的内容。

  • 网络爬取

另一方面,Web爬网采用一种更通用的方法,访问网页并记录其中的内容,然后提取满足特定条件的页面上的链接,以添加到要爬网的链接列表中。使用称为网络搜寻器或网络蜘蛛的计算机程序完成网络搜寻。与在网页抓取器中考虑到特定URL并基于页面HTML设计的网络抓取器不同网络抓取器仅具有种子URL,并且有望找到将自己抓取的新链接。因此,Web爬网程序不是特定于站点的,并且在爬网之前不需要具有网页的先验知识。

但是,它通常不像网络抓取工具那样提取特定的数据。从真正的意义上讲,网络爬网涉及网络爬网,因为必须提取链接。网络爬虫最流行的示例是Google和Bing等搜索引擎的机器人,它们会访问页面以对其进行索引,然后在其他页面上的链接上进行爬网。


数据提取与技术工程的规模

  • 网页抓取

如果您以前对Web自动化感兴趣,您会发现Web抓取是您会想到的第一课。你知道为什么?因为它非常容易,尤其是在处理不严格的网站以防止抓取的情况下。Web抓取可以以任何规模进行,无论规模大小。工程方面,包括数据库及其管理,代理,Captchas以及JavaScript的处理,可能非常困难,同时也很容易-这一切都取决于您要从中爬网的网站和数据量被刮掉。

  • 网络爬行

Web爬网大多是大规模进行的,工程难度非常大。举例来说,如果您要开发一个从网站到抓取不同国家和地区人员电话号码的网站的电话号码提取网络搜寻器,则必须考虑不同国家/地区使用的不同格式以及某些人们用来伪装其他电话号码的技巧,以使抓取工具跳过它们。

当您甚至考虑将Web搜寻器用于搜索引擎索引编制时,您就会知道Web搜寻是一项严肃的工作。它需要大量的工程设计和高效的数据库管理系统-并不是Web抓取的情况,它主要使用CSV和Excel文件。

阅读更多内容,使用Selenium和Proxies构建Web爬网程序


伦理观点


  • 网页抓取

您几乎看不到一个网站知道该网站在做什么,它允许网页抓取工具访问其网页-您可以在网站的robots.txt文件中进行检查。网络抓取工具不会为网站增加任何价值。取而代之的是,他们臭名昭著的是免费提取网站上的公共可用数据,同时还向他们提出大量要求。甚至在某些情况下,由于网络刮板在短时间内发送的请求数量过多,导致网站崩溃。即使它们不影响网站的性能,也肯定会增加他们访问的网站的运行成本(财务上)。更糟糕的是,几乎没有任何网页抓取工具尊重网站的robots.txt文件。

了解更多:如何抓取网站而永不列入黑名单?


  • 网络爬行

与不识别并遵循robots.txt中的指令的网络抓取工具不同,道德的网络抓取工具可以识别并遵循。实际上,许多网络爬虫(例如搜索引擎拥有的爬虫)都可以识别并遵守robots.txt中的指令。非常重要的事实是,诸如搜索引擎拥有的Web爬网程序会为网站增值,因为它们将用于爬网其他网页以建立索引页面。

但是,无论如何,这并不表示所有网络爬网程序都是合乎道德的。有一些网络爬虫,例如用于抓取联系人详细信息的爬虫,以及其他不符合robots.txt文件中指令的不道德爬虫。但是,与网络抓取工具相比,网络抓取工具更尊重robots.txt文件。


抓取和爬行之间的相似之处

在本文的开头,有人说爬行和抓取是一样的。但从上面讨论的差异中,您可以看到它们并非如此。然而,它们有一些共同之处,你也需要知道。下面将讨论其中一些。


他们自动提取数据

抓取和抓取都是自动化过程,都是使用计算机bot或更好的网络bot完成的。它们全都用于访问网页并从中提取公开可用的数据。但是,尽管网络抓取工具需要事先了解将要从其抓取的网站,但抓取工具却没有。但总而言之,它们可以自动完成从网站手动收集数据的古老过程。事实仍然是,您要进行网络爬网,需要进行网络抓取。Web爬网是Web爬网的一种特殊形式。


涉及的合法性

您可能会想知道,Internet上的大多数网站都禁止在其网页上使用任何形式的自动化软件,但流行的搜索引擎除外。对于允许的内容,他们提供了官方API-网络抓取工具和抓取工具不使用API​​。这意味着无论您是开发刮板还是履带板,都直接违反了目标网站的使用条款。但是,这并不构成非法。实际上,在网站上抓取和抓取公开可用数据都是完全合法的。但是,技术因素可能使其非法。


结论

如果不深入研究Web爬网和爬网所涉及的活动,您会认为它们是相同的,但是名称不同。有些人甚至可以互换使用该词来表示相同的术语。但是,如果您已经阅读了上面的所有讨论,您将同意我的观点,尽管它们似乎是同一回事并具有一些相似之处,但它们并不相同-确实存在一些不可否认且非常重要的差异。

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

No more articles