搜索引擎抓取

目录

  1. 1 搜索引擎抓取
  2. 2 检测
  1. 刮除Google、Bing或Yahoo的方法
  2. 3 编程语言
  1. 工具和脚本

搜索引擎抓取

搜索引擎抓取是从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、百度等)。该工具包括异步联网支持,并且能够控制实际的浏览器以减轻检测。

搜索引擎抓取

相关推荐

离线阅读器

目录 1 离线阅读器 2 离线邮件阅读器离线阅读器离线阅读器是计算机软件是下载电子邮件、新闻组帖子或网页,使它们可当计算机处于脱机状态:没有连接到互联网。离线阅读器对于便携式计算机和拨号访问很有用。 离线邮件阅读器离线邮件阅读器是计算机程序,使用户可以在与存储邮件的服务器建立连接时间最短的情况下,阅读电子邮件或其他邮件。这是通过服务器将多个消息打包成压... (继续浏览)

脚本语言

目录 1 什么是脚本语言 2 脚本语言特性 3 语言类型 ▪ 编辑器语言 ▪ 作业控制语言和外壳 ▪ GUI脚本 ▪ 特定于应用程序的语言 ▪ 扩展/可嵌入语言什么是脚本语言脚本语言是一种编程语言,一个特殊的运行时环境,它可以自动执行的任务的; 这些任务也可以由人工操作员一个接一个地执行。脚本语言通常是解释性的,而不是编译性的。 基元通常是基本任务或A... (继续浏览)

IRC机器人

目录 1 IRC机器人 2 功能IRC机器人IRC机器人是一组脚本或一个独立的程序连接到互联网中继聊天作为一个客户端,所以出现对其他IRC用户以其他用户。IRC机器人与常规客户端的不同之处在于,它不为人类用户提供对IRC的交互式访问,而是执行自动化功能。 功能通常,IRC机器人被部署为从稳定主机运行的分离程序。它位于IRC通道上以保持打开状态,并防止恶... (继续浏览)

投票机器人

目录 1 投票机器人 2 使用的技术 ▪ 目标分析 ▪ 准备 ▪ 人体动作模拟 3 通常目标 4 反投票机器人投票机器人投票机器人是一种类型的网络机器人,旨在自动投票网上以恶意的方式投票。投票机器人试图表现得像人一样,但是会以自动化方式进行投票,以影响投票结果。个人和团体可以在线销售各种各样的投票机器人程序,这些程序针对从普通网站到Web应用程序的各种服务。... (继续浏览)

互联网机器人

目录 1 互联网机器人 2 IM和IRC 3 社交机器人 4 商业机器人 5 恶意机器人 6 有用的机器人 7 人与社交机器人的互动互联网机器人互联网机器人是一个软件应用程序是运行自动化任务(脚本)在互联网。通常,机器人执行的任务是简单而重复的,比人的执行速度要快得多。僵尸程序最广泛的用途是用于Web爬网,其中自动脚本从Web服务器中获取,分析和归档信息。所... (继续浏览)

聊天机器人

目录 1 什么是聊天机器人 2 聊天机器人发展 3 应用 ▪ 消息传递应用程序 ▪ 作为公司应用程序和网站的一部分 ▪ 聊天机器人序列 ▪ 公司内部平台 ▪ 客户服务 ▪ 医疗保健 ▪ 玩具 4 恶意使用 5 聊天机器人的局限性 6 聊天机器人和工作什么是聊天机器人聊天机器人是一个软件来进行一个在线聊天应用的对话通过文本或文本到语音。聊天机器人系统旨在令人信... (继续浏览)

API程序员

目录 1 API程序员 ▪ 概述 2 资格 3 API编写过程 4 产品API程序员API程序员是一个技术人员,主要撰写API应用程序编程接口(API)软件。主要受众包括程序员、开发人员、系统架构师和系统设计师。 概述API是一个基本的库,由用于构建软件应用程序的接口、函数、类、结构、枚举等组成。开发团队使用它与软件交互和扩展。给定编程语言和系统的AP... (继续浏览)

应用程序编程接口

目录 1 应用程序编程接口 2 目的 3 用法 ▪ 库和框架 ▪ 操作系统 ▪ 远程API ▪ Web API 4 应用程序编程接口设计应用程序编程接口应用程序编程接口(API)是计算接口,其限定多个软件中介之间的相互作用。它定义了可以进行的调用或请求的类型,如何进行调用,应使用的数据格式,要遵循的约定等。它还可以提供扩展机制,以便用户可以通过各种方式扩展现... (继续浏览)

归纳逻辑编程

目录 1 归纳逻辑编程 2 非正式意义和解决问题归纳逻辑编程归纳逻辑编程(ALP)是一个高级知识表示框架,可用于基于归纳推理以声明方式解决问题。它通过允许某些谓词未完全定义来扩展常规逻辑编程。解决问题的方法是通过推导这些可绑架谓词上的假设(归纳假设)来解决问题。这些问题可以是需要解释的观察结果(如经典绑架)或要实现的目标(如常规逻辑编程)。它可以用来解决诊断... (继续浏览)

量子克隆

目录 1 什么是量子克隆 2 量子克隆机的类型 ▪ 通用量子克隆 ▪ 非对称量子克隆 ▪ 概率量子克隆 3 近似量子克隆的应用 ▪ 离散量子系统中的克隆 ▪ 量子克隆攻击 ▪ 核磁共振 ▪ 受激发射 ▪ 远程克隆什么是量子克隆量子克隆是一个过程,它需要一个任意的,未知的量子状态并进行精确的复制,而不会以任何方式改变原始状态。如无克隆定理所示,量子力学定律禁止... (继续浏览)

三菱電梯

目录 1 三菱電梯 2 三菱電梯生產基地 3 三菱電梯子公司三菱電梯三菱電梯是日本的知名電器公司,三菱電梯主要業務有,生產電梯、自動扶梯、自動人行道、螺旋形自動扶梯和食物升降機自1931年以來,是日本xxx的電梯製造商和沿xxx的電梯製造商在世界。它還在所有日本公司的電梯市場中擁有xxx的國際業務。 三菱電梯生產基地三菱目前位於日本東京千代田。位於日本... (继续浏览)

越南面条

目录 1 越南面条 2 越南面条按成分分类 3 面条菜 ▪ 热面条汤 ▪ 干面条菜 ▪ 热面条卷 ▪ 冷宣纸卷 ▪ 热面条越南面条越南面条包括许多类型的面条。这些通常在汤中食用,但也可以直接食用。 越南面条按成分分类越南面条有新鲜(tươi)或干(khô)形式。Bánhcanh-由米粉和木薯粉或小麦粉的混合物制成的粗面条;外观类似于乌冬面,但实质上不相... (继续浏览)

新加坡美食

目录 1 新加坡美食 2 新加坡海鲜 3 新加坡水果 4 新加坡甜品 ▪ 冰淇淋三明治 5 新加坡饮料新加坡美食新加坡美食涵盖的各种要素饮食文化新加坡,从多个来源的族群已经通过这个世界性的政治、经济和社会的变化百年来不断发展的城市国家。 影响力包括马来人、华人和印度人的美食,以及印度尼西亚、土生华人和西方的传统美食(尤其是英、葡风味的欧亚混血菜,被称为... (继续浏览)

音频滤波器

目录 1 音频滤波器 2 类型 ▪ 低通 ▪ 高通 ▪ 带通 ▪ 全部通过 3 应用音频滤波器音频滤波器是依赖于频率的放大器电路,在工作音频范围,0Hz到超过20千赫。音频滤波器可以放大,通过或衰减某些频率范围。存在针对不同音频应用的多种类型的滤波器,包括高保真立体声系统、音乐合成器、音效、扩声系统、乐器放大器和虚拟现实系统。 类型低通低通滤波器通过低... (继续浏览)

模拟滤波器

目录 1 什么是模拟滤波器 2 其他值得注意的发展和应用 ▪ 机械过滤器 ▪ 分布式元素过滤器 ▪ 横向过滤器 ▪ 匹配的过滤器 ▪ 控制系统过滤器 3 现代实践什么是模拟滤波器模拟滤波器是信号处理的基本组成部分,广泛用于电子学中。当中其许多应用的音频信号施加到前分离低音、中音和高音扬声器 ; 将多个电话对话合并和分离到一个通道上;在无线电接收器中选择选定的... (继续浏览)

热循环仪

目录 1 什么是热循环仪 ▪ 历史 2 现代创新什么是热循环仪热循环仪,是一个实验室最常用的的AMPLIFY段装置DNA通过聚合酶链式反应(PCR)。热循环仪也可以在实验室中使用,以促进其他对温度敏感的反应,包括限制酶消化或快速诊断。该设备有一个散热块带有孔的地方可以插入容纳反应混合物的管。然后,循环器以不连续的预编程步骤升高和降低模块的温度。 历史最... (继续浏览)

响应式计算机辅助设计

目录 1 响应式计算机辅助设计 2 相关概念 3 目前的工作响应式计算机辅助设计响应式计算机辅助设计(也简化为响应式设计)是一种计算机辅助设计(CAD)的方法,该方法利用现实世界中的传感器和数据来修改三维(3D)计算机模型。该概念通过虚拟世界和物理世界的模糊化而与电子物理系统相关,但是特别适用于生产之前对象的初始数字设计。 该过程始于设计人员使用具有参... (继续浏览)

分布式发电

目录 1 分布式发电 2 技术 ▪ 热电联产 ▪ 太阳能 ▪ 风力 3 与网格集成 4 缓解DG集成的电压和频率问题 5 独立的混合发电系统分布式发电分布式发电,也称为分布式能源,即现场发电(OSG)或区域/分散式能源,是指通过各种小型的,与电网连接或与配电系统相连的设备进行的发电和存储,称为分布式能源资源(DER)。 常规电站,如煤、气以及核动力电厂... (继续浏览)

网络物理系统

目录 1 网络物理系统 ▪ 概述 2 移动网络物理系统 3 设计网络物理系统网络物理系统(CPS)是一种计算机系统,其中的机制由基于计算机的算法控制或监视。在网络物理系统中,物理和软件组件紧密地交织在一起,能够在不同的时空尺度上运行,展现出多种不同的行为方式,并以随环境变化的方式彼此交互。网络物理系统的示例包括智能电网、自动驾驶汽车系统、医疗监控、工业控制系... (继续浏览)

虚拟电厂

目录 1 什么是虚拟电厂 2 虚拟发电 3 辅助服务 4 能源贸易 5 欧洲虚拟电厂 6 澳大利亚虚拟电厂什么是虚拟电厂虚拟电厂(VPP)是一个基于云的分布式电源的植物,聚集的异构能力分布式能源(DER)提高发电的目的,以及买卖或出售电力的电力市场。虚拟电厂的示例存在于美国、欧洲和澳大利亚。 虚拟发电虚拟电厂是一种集成了多种类型的电源以提供可靠的整体电... (继续浏览)