What is 分布式,爬虫?

  使用多台机器组成一个分布式的机群,在机群中运行同一组程序。进行联合数据的爬取 ! 

Scrapy怎么实现分布式?

  原生Scrapy是无法实现分布式的 !

       Reason:

            -  原生scrapy中的调度器无法共享,

            -  原生scrapy中的管道不可以被共享

  Solution:

            -  必须使用scrapy-redis(模块)

    -  该模块可以 给原生的scrapy提供共享的管道和调度器

            -  pip install scrapy-redis

  搭建流程:

1. 创建工程
2. 爬虫文件
3. 将当前爬虫文件的父类修改为 RedisCrawlSpider
4. # allowed_domain 和起始url不再需要,删除 ,然后创建调度器队列名称 redis_key`
5. 数据解析,将解析的数据封装到Item中然后向管道提交。
6. settings.py中重新配置- 指定管道 : """ITEM_PIPELINES = {'scrapy_redis.pipelines.RedisPipeline': 400}"""- 指定调度器: """# 使用scrapy-redis组件的去重队列DUPEFILTER_CLASS =         "scrapy_redis.dupefilter.RFPDupeFilter"# 使用scrapy-redis组件自己的调度器SCHEDULER = "scrapy_redis.scheduler.Scheduler"# 是否允许暂停SCHEDULER_PERSIST = True"""- 指定具体的redis : """REDIS_HOST = 'redis服务的ip地址'REDIS_PORT = 6379REDIS_ENCODING = ‘utf-8’REDIS_PARAMS = {‘password’:’123456’}"""
7. 开启redis服务:- redis.windows.conf   取消默认绑定 "127.0.0.1" ;关闭保护模式- redis-server- redis-cli
8.运行爬虫文件: scrapy runspider SpiderFile.py
9. 向调度器队列中扔入一个起始url(在redis客户端中操作):lpush  redis_key属性值   起始url

    

转载于:https://www.cnblogs.com/CrazySheldon1/p/10838543.html

爬虫篇 --- 分布式爬虫相关推荐

  1. Java 多线程爬虫及分布式爬虫架构探索

    维护待采集的 URL 多线程爬虫程序就不能像单线程那样,每个线程独自维护这自己的待采集 URL,如果这样的话,那么每个线程采集的网页将是一样的,你这就不是多线程采集啦,你这是将一个页面采集的多次.基于 ...

  2. java多线程爬虫_Java 多线程爬虫及分布式爬虫架构

    在这个时间就是金钱的年代,不可能给你时间去慢慢的采集,所以单线程爬虫程序是行不通的,我们需要将单线程改成多线程的模式,来提升采集效率和提高计算机利用率.维护待采集的 URL多线程爬虫程序就不能像单线程 ...

  3. java 爬虫_探索Java 多线程爬虫及分布式爬虫架构

    在我们调试爬虫程序的时候,单线程爬虫没什么问题,但是当我们在线上环境使用单线程爬虫程序去采集网页时,单线程就暴露出了两个致命的问题: 采集效率特别慢,单线程之间都是串行的,下一个执行动作需要等上一个执 ...

  4. dubbo源码深度解析_scrapy框架通用爬虫、深度爬虫、分布式爬虫、分布式深度爬虫,源码解析及应用

    scrapy框架是爬虫界最为强大的框架,没有之一,它的强大在于它的高可扩展性和低耦合,使使用者能够轻松的实现更改和补充. 其中内置三种爬虫主程序模板,scrapy.Spider.RedisSpider ...

  5. 【文智背后的奥秘】系列篇——分布式爬虫之WebKit

    2019独角兽企业重金招聘Python工程师标准>>> 版权声明:本文由文智原创文章,转载请注明出处:  文章原文链接:https://www.qcloud.com/communit ...

  6. python爬虫要安装什么_python爬虫之分布式爬虫和部署

    分布式爬虫:爬虫共用同一个爬虫程序,即把同一个爬虫程序同时部署到多台电脑上运行,这样可以提高爬虫速度. 在默认情况下,scrapy爬虫是单机爬虫,只能在一台电脑上运行,因为爬虫调度器当中的队列queu ...

  7. python虚拟机分布式爬虫_分布式爬虫实战

    一.环境搭建 由于条件有限,一台虚拟机,一台笔记本. 在虚拟机上装上mongodb数据库.redis数据库.redis_scrapy.pymongo.scrapyd 在本地电脑上装上monodb数据库 ...

  8. 增量式爬虫与分布式爬虫

    文章目录 1.redis的安装 2.基于crawlSpider的全站数据爬取 3.分布式 4.增量式 5.scrapy提高数据爬取效率 6.虚拟环境 1.redis的安装 1.将安装包解压到一个文件夹 ...

  9. Python 三.创建第一个scrapy爬虫项目(分布式爬虫打造搜索引擎)

    1.安装pywin32 打开cmd窗口 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywin32 2.安装Twisted网络数据处 ...

最新文章

  1. angular.isUndefined()
  2. Hanlp分词实例:Java实现TFIDF算法
  3. linux 内核 netfilter 网络过滤模块 (1)-框架
  4. html <link>标签
  5. JavaFX技巧30:带有DropShadow的ScrollPane
  6. STM32H743+CubeMX-解决FDCAN控制器无法接收远程帧
  7. 华科计算机学院三好学生,他是华科“三好学生标兵”,被保研到北大、复旦、交大等3所名校!...
  8. android x86 sleep,如何打开Android X86对houdini的支持
  9. Webx MVC分析
  10. Android Studio 下载安装教程
  11. ogg格式怎么转换为mp3?
  12. git 下载指定历史版本
  13. 最小二乘支持向量机——LSSVM
  14. 苹果CMSv10系统标签,仿站必备
  15. 视觉分类任务中,Confusion Matrix (混淆矩阵) 的绘制
  16. 【论文笔记】多时相遥感影像变化检测方法综述
  17. xmind文件不见了处理方法
  18. 【微信小程序】生命周期
  19. juyter显示决策树图形_在Jupyter Noteb中绘制交互式决策树
  20. 注重医院患者院后随访提高医疗质量

热门文章

  1. jenkins 添加 k8s 云
  2. 相关子查询 与非相关子查询
  3. Java jdk 安装笔记
  4. 转:python——IPy库
  5. 架构师书单 2nd Edition
  6. dwr消息推送和tomcat集群
  7. CentOS 7 安装Apache 2.4.39
  8. Promise 解析
  9. JavaScript之三:jQuery插件开发(一)
  10. IOS之同步请求、异步请求、GET请求、POST请求