精选文章 分布式爬虫

分布式爬虫

作者:aixie0138 时间: 2021-02-07 01:32:15
aixie0138 2021-02-07 01:32:15
【摘要】pip install scrapy-redisscrapy genspider -t crawl xxx www.xxx.com
 class ChoutiSpider(RedisCrawlSpider): name = 'chouti' # allowed_domains = ['www.chouti.com'] # start_urls = ['http://www.chouti.co...
pip install scrapy-redis

scrapy genspider -t crawl xxx www.xxx.com

class ChoutiSpider(RedisCrawlSpider):
name = 'chouti'
# allowed_domains = ['www.chouti.com']
# start_urls = ['http://www.chouti.com/']
redis_key = 'chouti'
rules = (
Rule(LinkExtractor(allow=r'/hot/\d+'), callback='parse_item', follow=True),
)
#setting 中设置


使用组件中封装好的可以被共享的管道类: ITEM_PIPELINES = { 'scrapy_redis.pipelines.RedisPipeline': 400 }

配置调度器(使用组件中封装好的可以被共享的调度器) # 增加了一个去重容器类的配置, 作用使用Redis的set集合来存储请求的指纹数据, 从而实现请求去重的持久化
DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter" # 使用scrapy-redis组件自己的调度器 SCHEDULER = "scrapy_redis.scheduler.Scheduler" # 配置调度器是否要持久化, 也就是当爬虫结束了, 要不要清空Redis中请求队列和去重指纹的set。如果是True, 就表示要持久化存储, 就不清空数据, 否则清空数据 SCHEDULER_PERSIST = True 指定存储数据的redis: REDIS_HOST = 'redis服务的ip地址' REDIS_PORT = 6379


配置redis数据库的配置文件 取消保护模式:protected-mode no bind绑定: #bind 127.0.0.1 - 启动redis 6.执行分布式程序 scrapy runspider xxx.py 7.向调度器队列中仍入一个起始url: 在redis-cli中执行:

 

转载于:https://www.cnblogs.com/ls1997/p/10878209.html

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:Weex--条形码生成

下一篇:leetcode第四题:寻找两个有序数组的中位数

您可能感兴趣

  • 爬虫day3 (爬取雪球网n页数据)

    爬取雪球网n页数据 用到 与mysql数据库的交互   # 爬取雪球网n页数据 # 用到 与mysql数据库的交互 import requests import json import pymysql class mysql_conn(object): # 魔术方法, 初始化, 构造函数 def __init__(self):...

  • python爬虫

    import requests from bs4 import BeautifulSoup post_dict= { 'phone' : '15890xxxxxx', 'password': 'xxxxxx', 'oneMonth':1 } response = requests.post( url = 'https...

  • 分布式监控zabbix配置使用

    下一张继续zabbix:监控zabbix–percona插件,zabbix-proxy代理 地址:https://blog.csdn.net/su_use/article/details/81713928 1、安装...

  • 爬虫小项目sql插入

    对上一片小项目的改进(小爬虫) 由于上一篇提到爬取的数据直接插入数据库会提高效率 sqlserver,查了资料配置了数据库,sql管理软件真的坑超多, 社么localsystem localserver netwo...

  • zookeeper单机多实例和分布式部署

    介绍zookeeper单机多实例部署(实验性质)以及生产环境的分布式部署   1. 准备工作:      1)需要linux环境,推荐用ubuntu的系统。学习的话使用oracle的virtual box安装虚拟机,网上找下安装文档就可以装好了,而生产环境一般都会装好的。ubuntu下载链接: 32位:http://m...

  • 爬虫实战1-多进程爬取 名言网

    import requests import re from multiprocessing import Pool def get_html(url, header=''): ''' :param...

  • hadoop完全分布式安装配置

    一、创建hadoop用户并配置ssh无密钥登录。 http://yntmdr.blog.51cto.com/3829621/1631908 二、安装jdk 三、解压hadoop压缩包 tar -xf hadoop-2.7.1.tar.gz 修改拥有者 chown -R hadoop:hadoop ...

  • 基于redis实现分布式锁

    背景 一套代码部署在四个服务器上,代码逻辑是:检查当前表的总数据条数,满足一定条件后切换到下一个分表 四个同时都去切换表 + 1 的操作是不可以的,他们要先从 redis 获取一把锁,没有获取到锁的就直接退出,等待下一次定时任务的调度。拿到了锁的就去执行切换当前分表的操作 实现 获取锁 和 释放锁 的关键代码如下所示: /*...

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
分布式爬虫介绍:华为云为您免费提供分布式爬虫在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多分布式爬虫的相关内容。| 移动地址: 分布式爬虫 | 写博客