主流爬虫框架如何选择(Python,Java,PHP,DotNet)

最近有同学问到我,爬虫框架如何选择,我用过很多爬虫框架,这里就专门说一说。

PHP:
PHPSpider:强大极其灵活,配置形式,基本上可以用配置解决所有问题

.NET:
DotnetSpider:参照WebMagic,强大,灵活

Python:
Scrapy:元老级别,强大,周边插件强大,应用广。但是也有不足(单进程只能运行单个爬虫任务),常用的的redis插件有缺陷
PySpider:玩具,适合非专业爬虫人员,不稳定

Java:
Nutch:元老级,适合搜索引擎,比较繁重,可定制化不强,不推荐
WebMagic:参照Scrapy,但是青出于蓝而胜于蓝。强大,灵活,原生支持分布式,自带的redis队列很不错,可以实现单进程多任务,强烈推荐!!!!!
Crawler4j:不错的框架,采用的是BerkeleyDB 进行url的过滤。不支持分布式采集,但是可以通过使用redis队列实现分布式,但是开源的redis队列有缺陷,慎用!
WebCollector:国人开发,功能不错,但是不同版本兼容性不好,可修改空间不大

这些在我的课程中都有详细的讲解和案例,有兴趣的可以去听听。

作者:神秘的站长

发表评论