分布式爬虫框架 Demo
记录用Java开发一个简单的分布式爬虫框架,从最开始的十几行代码到开发一个支持集群、分布式的爬虫框架。
起因
在训练智能问答机器人的模型时,缺少模型数据,决定使用爬虫进行。
当前每天的生活如下:
- 写一个爬虫抓数据
- 训练模型
- 查看训练结果
弊端
- 单线程爬虫太慢了,没法充分利用计算资源,亟需性能提升。
- 目标网站经常变更,势必经常添加、修改爬取网站。需要一个框架(其实已有很多很好地框架,这里仅为了学习)。
- 手动触发爬虫和训练太蠢了,希望自动触发,夜里完成
由于“懒”,第一步第二步占用了90%的时间,决定将其自动化。
目标
- 每天凌晨2点定时增量抓取数据并保存
- 每天凌晨3点训练模型
- 每天白天到实验室增加爬虫数据源,看结果,调整模型
用最简单的代码实现一个爬虫
用十几行代码爬取全站新闻