搜索引擎抓取

编辑
本词条由“匿名用户” 建档。
搜索引擎抓取是从Google、Bing或Yahoo等搜索引擎中收集URL,描述或其他信息的过程。这是专门用于搜索引擎的屏幕抓取或网络抓取的一种特定形式。 最常见的大型搜索引擎优化(SEO)提供商依赖于定期从搜索引擎(尤其是Google)中抓取关键字,以监控其客户网站在相关关键字或索引状态方面的竞争地位。 诸如Google之类的搜索引擎不允许对其服务进行任何形式的自动访问,但是从法律的角度来看,没有...

搜索引擎抓取

编辑

搜索引擎抓取是从Google、Bing或Yahoo 等搜索引擎中收集URL,描述或其他信息的过程。这是专门用于搜索引擎的屏幕抓取或网络抓取的一种特定形式。

最常见的大型搜索引擎优化(SEO)提供商依赖于定期从搜索引擎(尤其是Google)中抓取关键字,以监控其客户网站在相关关键字或索引状态方面的竞争地位。

诸如Google之类的搜索引擎不允许对其服务进行任何形式的自动访问,但是从法律的角度来看,没有已知的案例或违法行为。

进入网站并以自动化方式提取数据的过程通常也称为“ 爬网 ”。诸如Google,Bing或Yahoo之类的搜索引擎几乎都从自动抓取机器人中获取了所有数据。

搜索引擎抓取

检测

编辑

当搜索引擎防御认为访问可能是自动化的时,搜索引擎可能会做出不同的反应。

防御的xxx层是一个验证码页面,在该页面中,系统会提示用户确认他是真实的人,而不是机器人或工具。解决验证码将创建一个cookie,该cookie允许再次访问搜索引擎一段时间。大约一天后,验证码页面再次被删除。

防御的第二层是类似的错误页面,但没有验证码,在这种情况下,用户被完全阻止使用搜索引擎,直到解除临时阻止或用户更改其IP。

第三层防御是整个网络段的长期障碍。Google封锁大型网络封锁已有几个月了。这种阻止很可能是由管理员触发的,并且仅在抓取工具发送大量请求时才会发生。

所有这些形式的检测也可能发生于普通用户,尤其是共享相同IP地址或网络类别(IPV4范围以及IPv6范围)的用户。

刮除Google、Bing或Yahoo的方法

要成功抓取搜索引擎,两个主要因素是时间和数量。

用户需要刮除的关键字越多,完成工作的时间越短、刮除的难度就越大,并且刮除脚本或工具的开发也就越必要。

抓取脚本需要克服一些技术挑战:

  • 使用代理进行IP轮换(代理应该不共享并且不在黑名单中)
  • 正确的时间管理,关键字更改之间的时间,分页以及正确放置的延迟有效的长期抓取速度可以从每小时仅3–5个请求(关键字或页面)变化到每个使用的每个IP地址/代理每小时100个甚至更多。IP的质量、抓取方法、请求的关键字以及请求的语言/国家/地区可能会极大地影响可能的最高比率。
  • 正确处理URL参数,cookie以及HTTP标头,以使用典型的浏览器模拟用户
  • HTML DOM解析(从HTML代码中提取URL、描述、排名位置、站点链接和其他相关数据)
  • 错误处理,对验证码或阻止页面的自动响应以及其他异常响应
  • 验证码定义如上文所述

GoogleScraper是利用上述技术的开源抓取软件的示例。该框架通过DevTools协议控制浏览器,使Google很难检测到该浏览器是自动的。

编程语言

编辑

在为搜索引擎开发抓取工具时,几乎可以使用任何编程语言,但根据性能要求,某些语言将是有利的。

PHP是一种用于编写网站或后端服务的抓取脚本的常用语言,它具有内置的强大功能(DOM解析器,libcURL),但其内存使用量通常是类似C / C ++代码的十倍。Ruby on Rails和Python也经常用于自动抓取作业。为了获得最高性能,应考虑使用C ++ DOM解析器。

甚至bash脚本也可以与cURL一起用作命令行工具来抓取搜索引擎。

工具和脚本

开发搜索引擎抓取工具时,有几种现有的工具和库可供使用,扩展或分析以供借鉴。

  • iMacros-一个免费的浏览器自动化工具包,可用于从用户浏览器中进行非常小批量的抓取
  • cURL –用于自动化和测试的命令行浏览器,以及可用于多种编程语言的强大的开放源代码HTTP交互库。
  • GoogleScraper 一个Python模块,通过使用代理(socks4 / 5,http代理)来抓取不同的搜索引擎(例如Google、Yandex、Bing、Duckduckgo、百度等)。该工具包括异步联网支持,并且能够控制实际的浏览器以减轻检测。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/111925/

(4)
词条目录
  1. 搜索引擎抓取
  2. 检测
  3. 刮除Google、Bing或Yahoo的方法
  4. 编程语言
  5. 工具和脚本

轻触这里

关闭目录

目录