爬行器(Spider)指在 Web 上漫游,寻找要添加进
搜索引擎索引中的列表。爬行器有时也称为 Web 爬行榜(Webcrawler)或
机器人。针对有机列表优化页面也就是为了吸引爬行器的注意。
网络爬虫,也称为
蜘蛛程序(Spider)。
网络爬虫是一个自动提取网页的程序,是
搜索引擎的重要组成部分。作为爬虫来讲,就是尽可能多和快的给
搜索引擎输送网页,实现强大的数据支持。
网络爬虫是通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其他链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。
Google为了获取上亿的网页,设计了一个分布式的爬行系统。一个URL服务器将URL列表提供给网络爬行器。每个爬行器同时保持大约300个网络连接。在最高速度的时候,通过4个爬行器,该系统可以每秒钟获取超过100个网页。
影响爬行速度的一个重要因素是
DNS查询,为此每个爬行器都要维护一个自己的DNS缓冲。这样每个连接都处于不同的状态,包括DNS查询、连到
主机、发送请求、得到响应。这些因素综合起来使得爬行器变成一个非常复杂的系统。它通过
异步输入/输出来管理事件,通过一定数量的队列来管理获取网页过程中的状态迁移。