Py学习  »  Python

Python爬虫入门教程 72-100 分布式爬虫初步解析-配好环境肝完一半

梦想橡皮擦 • 3 年前 • 280 次点击  

写在前面

最近该系列的爬虫更新比较慢了,原因是实在写不动了,70多篇博客,每一篇都是一个案例,在写好多都不是篇博客可以容纳的了,而且爬虫的技术在70多篇中都有所涉及了,但是flag既然历下了,那么就必须要把它完成,接下来进入一些稍微稍微麻烦一点的内容,第一个咱就写分布式爬虫,这个其实核心就是提高爬取效率的,属于套路,而且是常见的讨论,走起。

为什么要用分布式

好问题,其实大多数爬虫在编写的时候如果遇到效率问题,用多进程,协程就可以满足需求了,但是当一个爬虫类的项目上升到非常大的级别或者达到商用的目的,你需要同时抓取成千上万个网站,处理上亿的请求(有点夸张了),单个的爬虫非常难实现这样的需求,就需要大量的服务器进行同时分布抓取,所以你看到大多数分布式爬虫课程到最后都是在模拟一个搜索引擎,因为搜索引擎就是一个超级爬虫。

接下来的几篇博客,可能重点都会落在 scrapy-redis 这个框架或者叫做基于redis的一个组件上面,因为通过他,我们可以快速、简单的实现分布式爬虫程序

总结一句话,啥叫分布式爬虫,可以给一个不精准,但是好理解的定义

把爬虫部署在多台电脑主机上,并且互相之间还有通讯的一种爬虫技术

scrapy-redis

对于分布式爬虫,scrapy-redis 目前是应用最多的,并且是互联网相关教程说明最多的,原因也不用太深究,综合各种因素来看该框架是最简单的构建分布式爬虫的方式,而且资料全,不选他选谁?

后续我尽力把常见的分布式爬虫框架都进行依次的说明,例如 scrapyd celery 这些,了解的越多,对待一个问题的解决方案也会变的越多。

回顾scrapy的架构

scrapy默认是单机爬虫,有过了解的朋友(当然,你如果持续看到我今天的博客,应该在之前已经对scrapy有过认识了,当然不能说看过几篇博客就能

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/70980
 
280 次点击