❖ 控制器:是网络爬虫的中央控制器,它主要是负责根据系 统传过来的URL链接,分配一线程,然后启动线程调用爬 虫爬取网页的过程。
❖ 解析器:是负责网络爬虫的主要部分,其负责的工作主要 有:对网页的文本进行处理,如过滤功能,抽取特殊 HTML标签的功能,分析数据功能.下载网页数据,包括 html、图片、doc、pdf、多媒体、动态网页等。
附录1:开源爬虫
❖ Methabot是一个使用C语言编写的高速优化的,使用命令行方式运行的, 在2-clause BSD许可下发布的网页检索器。它的主要的特性是高可配置性, 模块化;它检索的目标可以是本地文件系统,HTTP或者FTP。
❖ Nutch是一个使用java编写,在Apache许可下发行的爬虫。它可以用来连 接Lucene的全文检索套件;
爬虫。在英语和日语页面的抓取表现良好,它在GPL许可下发行,并且完全 使用Python编写。按照robots.txt有一个延时的单网域延时爬虫。 ❖ Universal Information Crawler快速发展的网络爬虫,用于检索存储和分析 数据; ❖ Agent Kernel,当一个爬虫抓取时,用来进行安排,并发和存储的java框 架。 ❖ 是一个使用C#编写,需要SQL Server 2005支持的,在GPL许可下发行的 多功能的开源的机器人。它可以用来下载,检索,存储包括电子邮件地址, 文件,超链接,图片和网页在内的各种数据。 ❖ LWP:RobotUA(Langheinrich,2004)是一个在Perl5许可下发行的,可以 优异的完成并行任务的 Perl类库构成的机器人。
❖ WIRE-网络信息检索环境(Baeza-Yates 和 Castillo, 2002)是一个使用C++ 编写,在GPL许可下发行的爬虫,内置了几种页面下载安排的策略,还有一 个生成报告和统计资料的模块,所以,它主要用于网络特征的描述;