搜索引擎之网络爬虫
来源:互联网 发布:c语言的创始人 编辑:程序博客网 时间:2024/05/21 03:24
通用搜索引擎的处理对象是互联网网页,目前网页数量以百亿计,搜索引擎的网络爬虫能够高效地将海量的网页数据传下载到本地,在本地 形成互联网网页的镜像备份。它是搜索引擎系统中很关键也很基础的构件。
1.网络爬虫的原理
网络爬虫的本质就是http请求获得互联网中Web服务器的网页。
网络爬虫采用浏览器式的方式来获取网页,过程如下:
a)客户端程序连接到域名系统(DNS)服务器上,DNS服务器将主机名转换成IP 地址。
b)客户端试着连接具有该IP地址的服务器。服务器上可能有多个不同进程程序在运行,每个进程程序都在监听网络以发现新的选接。各个进程监听不同的网络端口(port). 端口是一个16位的数字,用来辨识不同的服务。Http请求一般默认都是80端口。
c)一旦建立连接,客户端向服务器发送一个http请求,服务器接收到请求后,返回响应结果给客户端。
d)客户端关闭该连接。
2.网络爬虫的架构
浏览器是用户主动操作然后完成HTTP请求,而爬虫需要自动完成http请求,网络爬虫需要一套整体架构完成工作。尽管爬虫技术经过几十年的发展,从整体框架上已相对成熟,但随着互联网的不断发展,也面临着一些有挑战性的新问题。 通用爬虫框架如下图:
通用的爬虫框架流程:
a)首先从互联网页面中精心选择一部分网页,以这 些网页的链接地址作为种子URL;
b)将这些种子URL放入待抓取URL队列中;
c)爬虫从待抓取 URL队列依次读取,并将URL通过DNS解析,把链接地址转换为网站服务器对应的IP地址。
d)然后将IP地址和网页相对路径名称交给网页下载器,
e)网页下载器负责页面内容的下载。
f)对于下载到 本地的网页,一方面将其存储到页面库中,等待建立索引等后续处理;另一方面将下载网页的 URL放入己抓取URL队列中,这个队列记载了爬虫系统己经下载过的网页URL,以避免网页的重复抓取。
g)对于刚下载的网页,从中抽取出所包含的所有链接信息,并在已抓取URL队列 中检査,如果发现链接还没有被抓取过,则将这个URL放入待抓取URL队列
h)末尾,在之后的抓取调度中会下载这个URL对应的网页,如此这般,形成循环,直到待抓取URL队列为空。
3.网络爬虫的策略
——》深度优先搜索策略(顺藤摸瓜)
——》广度优先搜索策略
——》反向链接数策略
——》Partial PageRank策略,即最佳优先搜索策略
——》OPIC策略策略
——》大站优先策略
参考文章Url:http://blog.csdn.net/hguisu/article/details/7949844
- 搜索引擎之网络爬虫
- 搜索引擎之网络爬虫
- 搜索引擎技术之网络爬虫
- 小型搜索引擎之简单网络爬虫实现
- 搜索引擎-网络爬虫
- 搜索引擎----网络爬虫
- 搜索引擎-网络爬虫
- 搜索引擎-网络爬虫
- 搜索引擎-网络爬虫
- 网络爬虫结合搜索引擎
- 网络搜索引擎---网络爬虫之原理分析和探讨
- 网络搜索引擎---网络爬虫之原理分析和探讨
- 搜索引擎学习之一:网络爬虫
- 【搜索引擎基础知识2】网络爬虫
- 【搜索引擎基础知识2】网络爬虫
- 网络搜索引擎-爬虫,相关文章
- 搜索引擎与网络爬虫简述
- 搜索引擎/网络爬虫程序源代码
- JAVA语言运算符
- POJ 2234 Matches Game 尼姆博弈
- 最佳日志实践
- 用CSS定义每段首行缩进2个字符
- Paleo In A Kitchen: Caveman Cooking Masterclass
- 搜索引擎之网络爬虫
- Photoshop CS4 此产品的许可证已过期
- Android build.prop生成
- android View事件分发机制。
- NFS服务器的配置与应用
- C++ 内存管理
- solr3.6.2使用过程中过若干问题 记录
- 点滴记录C++
- 八个DOS命令