分布式爬虫步骤:
1.先用scrapy写出爬虫项目
2.redis 服务器
3.把原来单机版改成分布式
a 修改settings
b 修改爬虫类 继承
from scrapy_redis.spiders import RedisSpider —– spider
from scrapy_redis.spiders import RedisCrawlSpider —–crawlspider
c 设置 redis-key
d 启动所有slave (所有爬虫终端)
e 向master端的redis里 push数据(起始url)
lpush redis-key url

myspider_redis.py版本

#coding:utf8
from scrapy_redis.spiders import RedisSpiderclass MySpider(RedisSpider):"""Spider that reads urls from redis queue (myspider:start_urls)."""name = 'myspider_redis'# 请求队列的键redis_key = 'myspider:start_urls'allow_domain = ['hao123.com']def parse(self, response):return {'name': response.css('title::text').extract_first(),'url': response.url,}

manage.py:

from scrapy import cmdline
import os
os.chdir('example/spiders')
cmdline.execute('scrapy runspider mycrawler_redis.py'.split())
redis-cli -h 192.168.6.6
lpush myspider:start_urls http://www.baidu.com
llen myspider:start_urls

mycrawler_redis.py版本

#coding:utf8
from scrapy.spiders import Rule # 按照规则提取url
from scrapy.linkextractors import LinkExtractor  # 生成请求from scrapy_redis.spiders import RedisCrawlSpiderclass MyCrawler(RedisCrawlSpider):"""Spider that reads urls from redis queue (myspider:start_urls)."""name = 'mycrawler_redis'redis_key = 'mycrawler:start_urls'allowed_domains = ['itxdl.cn']rules = (# follow all linksRule(LinkExtractor(), callback='parse_page', follow=True),)def parse_page(self, response):return {'name': response.css('title::text').extract_first(),'url': response.url,}
lpush mycrawler:start_urls http://www.baidu.com

Scrapy-redis分布式爬虫相关推荐

  1. Scrapy 框架 分布式 爬虫

    分布式 爬虫 scrapy-redis 实现 原生scrapy 无法实现 分布式 调度器和管道无法被分布式机群共享 环境安装 - pip install scrapy_redis 导包:from sc ...

  2. Python-玩转数据-scrapy简单分布式爬虫

    一.说明 虽然scrapy能做的事情很多,但是要做到大规模的分布式应用则捉襟见肘.有能人改变了scrapy的队列调度,将起始的网址从start_urls里分离出来,改为从redis读取,多个客户端可以 ...

  3. 解析python网络爬虫pdf 黑马程序员_正版 解析Python网络爬虫 核心技术 Scrapy框架 分布式爬虫 黑马程序员 Python应用编程丛书 中国铁道出版社...

    商品参数 书名:Python应用编程丛书:解析Python网络爬虫:核心技术.Scrapy框架.分布式爬虫 定价:52.00元 作者:[中国]黑马程序员 出版社:中国铁道出版社 出版日期:2018-0 ...

  4. 【Python3爬虫】学习分布式爬虫第一步--Redis分布式爬虫初体验

    一.写在前面 之前写的爬虫都是单机爬虫,还没有尝试过分布式爬虫,这次就是一个分布式爬虫的初体验.所谓分布式爬虫,就是要用多台电脑同时爬取数据,相比于单机爬虫,分布式爬虫的爬取速度更快,也能更好地应对I ...

  5. 基于scrapy的分布式爬虫抓取新浪微博个人信息和微博内容存入MySQL

    为了学习机器学习深度学习和文本挖掘方面的知识,需要获取一定的数据,新浪微博的大量数据可以作为此次研究历程的对象 一.环境准备 python 2.7 scrapy框架的部署(可以查看上一篇博客的简要操作 ...

  6. Scrapy + Redis 分布式爬取58同城北京全站二手房数据

    Hello,我是 Alex 007,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了. 经过一个星期的学习,爬虫这个章节算是告一段落了,记录一下作业. 文 ...

  7. 基于scrapy的分布式爬虫(5):伯乐在线文章爬取

    当我们完成了环境配置之后,所要做的就是使用 scrapy 爬取相关数据了. 接下来,我们以伯乐在线网站为例,进行实际操作. 目的:抓取 http://blog.jobbole.com/all-post ...

  8. scrapy 分布式 mysql_Scrapy基于scrapy_redis实现分布式爬虫部署的示例

    准备工作 1.安装scrapy_redis包,打开cmd工具,执行命令pip install scrapy_redis 2.准备好一个没有BUG,没有报错的爬虫项目 3.准备好redis主服务器还有跟 ...

  9. scrapy分布式爬虫爬取淘车网

    一.master主机配置 1.开启redis服务器 2.city.py#文件 # 城市编码 CITY_CODE = ['shijiazhuang', 'tangshan', 'qinhuangdao' ...

  10. Redis实现分布式爬虫

    redis分布式爬虫 概念:多台机器上可以执行同一个爬虫程序,实现网站数据的爬取 原生的scrapy是不可以实现分布式爬虫, 原因如下: 调度器无法共享 管道无法共享 scrapy-redis组件:专 ...

最新文章

  1. 从无到有,支付路由系统升级打怪之路|原创
  2. 盘点:2020年最酷的12家机器学习初创公司
  3. 腾讯NExT Studios万字解读:我们是怎样将一款偏硬核的Roguelike游戏大众化的?
  4. 在jekyll模板博客中添加网易云模块
  5. 设计模式学习笔记-基础知识篇
  6. 织梦服务器怎么修改,织梦dedecms更换服务器搬家教程
  7. 硬核科普!携号转网的技术原理分析!
  8. Linux常用命令及配置--简单
  9. 常用指令备忘录----持续更新
  10. PHP实现下载远程图片保存到本地的方法
  11. 谷歌、bing 翻译插件调研总结
  12. 软件测试周刊(第24期):最不重要的素质就是智商
  13. 常用的计算机病毒检测方法有哪些,计算机病毒检测方法有哪些呢
  14. 文本相似度计算(中英文)详解实战
  15. 【BP靶场portswigger-服务端1】SQL注入-17个实验(全)
  16. 高中英语试验修订本(第一册)上(人教版)
  17. java判断字符个数_使用Java判断字符串中的中文字符数量
  18. 以前一款半回合制java游戏_浅谈游戏的战斗方式分类:回合制,半回合制,即时制...
  19. 树莓派4B+EdgeX+MQTT的填坑之旅
  20. VMware 彻底删除虚拟机操作系统

热门文章

  1. 洗礼灵魂,修炼python(8)--高效的字典
  2. Agile.Net 组件式开发平台 - 平台系统介绍
  3. mysql privileges
  4. 《PHP对象、模式与实践》之对象
  5. chmod命令详解使用格式和方法
  6. Nodejs 分布式事务
  7. GitHub+Vue自动化构建部署
  8. Nginx handler模块
  9. Hibernate Validator JSR303示例教程
  10. 消息队列面试 - 如何保证消息的可靠性传输?