大家都知道,现在爬虫爬取的数据很多,仅凭单台主机已经无法满足人们的需要,所以,分布式爬虫提供了很好的解决方案。
第一步,我们需要安装redis服务,及redis的可视化管理工具。附上下载链接:
https://github.com/MSOpenTech/redis/tags 安装教程:https://blog.csdn.net/u010137839/article/details/80210328‘
第二步,我们需要修改redis的配置文件
将redis.windows.conf的bind 127.0.0.1 改为0.0.0.0
将redis.windows.conf的protected-mode 改为no (这个是取消redis的保护模式)
第三步,我们需要安装scrapy_redis这个模块
安装命令:pip install scrapy_redis
第四步, 我们需要修改我们带代码,来让我们的代码能分别部署在不同的机器上。
首先,我们需要在我们的配置文件上添加这样几句话:
第五步,我们要修改自己的爬虫文件,使其能接收到redis传过来的网址。
第六步,如果你的爬虫里面有需要连接数据库的,要先设置数据库为可连接状态
- 先打开数据库管理工具,打开mysql数据库里面的user表,设置root的权限为%(表示任何人都可以连接)
- 然后刷新数据库权限
第七步,把同一套代码拷到多台服务器当中,启动redis,以redis.windows.conf启动。
最后一步,启动所有主机上的同一套项目。
注意事项:
分布式用到的代码应该是同一套代码
1) 先把项目配置为分布式
2) 把项目拷贝到多台服务器中
3) 把所有爬虫项目都跑起来
4) 在主redis-cli中lpush你的网址即可
5) 效果:所有爬虫都开始运行,并且数据还都不一样