数据获取——网络爬虫2

3.工作流程

网络爬虫的工作流程如图8.1所示,具体说明如下:

(1)选取一.部分精心挑选的种子URL。

(2)将这些URL放人待抓取URL队列。

(3)从待抓取URL队列中取出待抓取的URL,解析DNS,得到主机的IP,并将URL对应的网页下载下来,存储到已下载网页库中。此外,将这些URL放进已抓取URL队列。(4)分析已抓取URL队列中的URL,分析其中的其他URL,并且将这些新的URL放人待抓取URL队列,从而进入下一个循环。9243dafef401475198ea60739b3b5a97.jpg

 网络爬虫是搜索引擎中最核心的部分,整个搜索引擎的素材库来源于网络爬虫的采集,从搜索引擎整个产业链来看,网络爬虫是处于最上游的产业,其性能好坏直接影响着搜索引擎整体性能和处理速度。

通常网络爬虫从一个或若干个初始网页上的URL开始,获得初始网页上的URL列表,在抓取网页过程中,不断从当前页面上抽取新的URL放人待抓取URL队列,直到满足系统的停止条件,如图8.2所示。

2ddbfbb0fba048918942e5c1d7fd513f.jpg

 网络爬虫各个部分的主要功能如下:

(1)页面采集模块。该模块是爬虫和因特网的接口,主要作用是通过各种Web协议(一般以HTTP、FTP为主)完成对网页数据的采集,保存后将采集到的页面交给后续模块做进一- 步处理。其过程类似于用户使用浏览器打开网页,保存的网页供其他后续模块处理,例如页面分析、链接抽取。

(2)页面分析模块。该模块的主要功能是对页面采集模块采集的页面进行分析.提取其中满足用户要求的超链接,加人超链接队列中。页面链接中给出的URL一般是多种格式的,可能是完整的包括协议、站点和路径的,也可能是省略了部分内容的,还可能是一个相对路径。所以为处理方便,一- 般进行规范化处理,先将其转化成统一的格式。

(3)链接过滤模块。该模块主要是用于对重复链接和循环链接的过滤。例如,相对路径需要补全URL,然后加入到待采集URL队列中。此时,一般会过滤掉队列中已经包含的URL以及循环链接的URL。

(4) 页面库。用来存放已经采集下来的页面,以备后期处理。

(5)待抓取URL队列。从采集网页中抽取并进行相应处理后得到的URL.当URL为空时爬虫程序终止。

(6)初始URL。 提供URL种子,以启动爬虫。

4.抓取对象

网络爬虫的抓取对象可以分为以下4类:

(1)静态网页。网络爬虫在互联网上从一个网站的初始网页开始.获得网页上的链接,在抓收过程中不断获得新的链接.直到达到系统指定的方式才会停止。

(2)动态网页。先通过程序分析一此非静态网 页的参数,按一定 的规则对所有要抓取页面的链接进行整理,程序只会抓取这些特定范围内的网页。

(3)特殊内容。比如RSS、XML数据,由于情况特殊,需特殊处理。例如,新闻的滚动页面需要爬虫不停地监控扫描,发现新内容马上就抓取。

(4)文件对象。目前网页上会有各种类型的文件,如图片、MP3、Flash、 视频等文件,这些都需要系统用一一定的方式处理。例如,视频被抓取后,要知道其类型、文件大小、分辨率等。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值