一个设计良好的爬虫架构必须满足如下的要求:
(1)分布式:爬虫应该能够在多台机器上分布执行;
(2)可伸缩性:爬虫结构应该能够通过增加额外的机器和带宽来提高抓取速度;
(3)性能和有效性:爬虫系统必须有效地使用各种系统资源,例如,处理器、存储空间和网络带宽。
(4)质量:鉴于互联网的发展速度,大部分网页都不可能及时出现在用户查询中,所以爬虫应该首先抓区有用的网页。
(5)新鲜性:在许多应用中,爬虫应该持续运行而不是只遍历一次。