有人可以根据范围和功能区分爬虫和抓取工具吗?
6 回答
爬虫获取网页——即,给定一个起始地址(或一组起始地址)和一些条件(例如,要深入多少链接,要忽略的文件类型)它会从起始点下载链接到的任何内容( s)。
抓取工具获取已下载的页面,或者更一般意义上的格式化显示数据,并(尝试)从这些页面中提取数据,以便(例如)将其存储在数据库中并根据需要进行操作.
根据您使用结果的方式,抓取可能会侵犯信息所有者的权利和/或有关网站使用的用户协议(在某些情况下,抓取也违反了后者)。许多站点在其根目录中包含一个名为robots.txt的文件(即具有 URL http://server/robots.txt
),以指定爬虫程序应如何(以及是否)处理该站点 - 特别是,它可以列出爬虫程序不应尝试访问的(部分)URL . 如果需要,可以为每个爬虫(用户代理)单独指定这些。
爬虫通过链接浏览网页。一个例子是获取页面索引的谷歌机器人。Scraper 从表单中提取值,但不一定与 Web 有任何关系。
一般来说,爬虫会沿着链接到达大量页面,而爬虫在某种意义上只是拉取在线显示的内容,不会到达更深的链接。
最典型的爬虫是 google bots,它会跟随链接到达你网站上的所有网页,如果他们觉得有用,就会索引内容(这就是为什么你需要 robots.txt 来告诉你不想成为哪些内容索引)。所以我们可以在它的网站上搜索这样的内容。而刮板的目的只是为了个人使用而拉取内容,不会对其他人产生太大影响。
但是,现在爬虫和爬虫没有明显区别,因为一些自动网络爬取工具还允许您通过链接来爬取网站,例如 Octoparse 和 import.io。它们不像谷歌机器人那样的爬虫,但它们能够自动爬取网站以获取大量数据,而无需编码。
爬虫和爬虫并不总是区分,我的意思是-你可以找到爬虫,实际上,爬虫两者都做,并相应地命名:
- 它爬到一个 URL 即索引该主 URL 中的所有 URL
- 抓取深度是索引在 URL 树中的深度
- 然后它会刮掉您在正则表达式中定义的任何内容
我知道这个问题已经很老了,但无论如何我都会为在这里想知道的新人做出回应。
从我收集和理解的情况来看,这两个术语似乎由于它们的相似性而经常相互混淆,人们经常将它们称为同一事物。
但是,它们并不完全相同。爬虫(或蜘蛛)将跟踪它从起始页爬取的页面中的每个链接。这就是为什么它也被称为蜘蛛机器人,因为它会创建一种蜘蛛网的页面。
抓取工具将从页面中提取数据,通常是从使用爬虫下载的页面中提取数据。
如果您对其中任何一个感兴趣,可以尝试Norconex HTTP 收集器。