Scrapy-redis 安装配置使用
# 安装redis服务器端
sudo apt-get install redis-server # 安装scrapy和scrapy-redis库
pip install scrapy
pip install scrapy-redis
# 终端1
$ redis-cli # 终端2(在spider目录下打开,并切换到虚拟环境)
$ scrapy runspider bludv.py # 终端1
$ lpush bludv:start_urls https://www.bludv.tv # 终端1:
# 删除当前数据库中的所有Key
flushdb
# 删除所有数据库中的key
flushall //下面的命令指定数据序号为0,即默认数据库
redis-cli -n 0 keys "*" | xargs redis-cli -n 0 del
settings.py代码需要更改的:
# 启动scrapy_redis的调度器, 在 redis 数据库里分配请求
SCHEDULER = "scrapy_redis.scheduler.Scheduler"
DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter" # 启用去重功能
# 默认的scrapy-redis请求队列形式
SCHEDULER_QUEUE_CLASS = "scrapy_redis.queue.SpiderPriorityQueue"
# 请求调度使用FIFO队列
SCHEDULER_QUEUE_CLASS = 'scrapy_redis.queue.SpiderQueue'
# 可选的 按后进先出排序(LIFO)
# SCHEDULER_QUEUE_CLASS = 'scrapy_redis.queue.SpiderStack' # 不清除Redis队列、这样可以暂停/恢复 爬取
# SCHEDULER_PERSIST = True # REDIS_URL = 'redis://192.168.2.223:6379' # 腾讯服务器 # # Specify the host and port to use when connecting to Redis (optional).
REDIS_HOST = 'localhost'
REDIS_PORT = 6379 # COOKIES_ENABLED = False # 禁用 cookies
# DOWNLOAD_DELAY = 4 # 设置下载延迟
# DOWNLOAD_TIMEOUT = 10 # 请求超时
# 重新请求
RETRY_ENABLED = True
# 重试次数
RETRY_TIMES = 8 AUTOTHROTTLE_ENABLED = True # 防止遗漏 # Configure item pipelines
# See https://doc.scrapy.org/en/latest/topics/item-pipeline.html
ITEM_PIPELINES = {
'BludvSpider.pipelines.BludvspiderPipeline': 300,
'BludvSpider.pipelines.MongodbWithPymongoPipeline': 301, # 使用 PyMongo 写入 MongoDB
'scrapy_redis.pipelines.RedisPipeline': 100, # scrapy-redis 分布式 }
bludv.py需要更改的:
class BludvSpider(scrapy.Spider):
# 改为
from scrapy_redis.spiders import RedisSpider
class BludvSpider(RedisSpider):
# start_urls = [
# # 'https://www.bludv.tv/category/series/'
# # 'https://www.bludv.tv/category/series/page/56/'
# # 'https://www.bludv.tv/o-protetor-2-torrent-2018-dublado-dual-audio-legendado-bluray-720p-e-1080p-download/'
# "https://www.bludv.tv"
# ] 改为 redis_key = "bludv:start_urls"
Scrapy-redis 安装配置使用的更多相关文章
- Linux中redis安装配置及使用详解
Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...
- redis 安装配置学习笔记
redis 安装配置学习笔记 //wget http://download.redis.io/releases/redis-2.8.17.tar.gz 下载最新版本 wget http://downl ...
- Python爬虫进阶三之Scrapy框架安装配置
初级的爬虫我们利用urllib和urllib2库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架Scrapy,这安装过程也是煞费苦心哪,在此整理如下. Windows 平台: 我的系统是 ...
- Ubuntu系统的Redis安装配置
Ubuntu系统的Redis安装配置 一. 安装Redis: 在Ubuntu系统下安装Redis数据库有两种方式: 方式一:下载最新的Redis版本(tar.gz格式),解压安装.操作如下: ...
- Windows下Redis安装配置和使用注意事项
Windows下Redis安装配置和使用注意事项 一:下载 下载地址: https://github.com/microsoftarchive/redis/releases 文件介绍: 本文以3.2. ...
- Python爬虫进阶之Scrapy框架安装配置
Python爬虫进阶之Scrapy框架安装配置 初级的爬虫我们利用urllib和urllib2库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架Scrapy,这安装过程也是煞费苦心哪,在此 ...
- java:redis(redis安装配置,redis的伪集群配置)
1.redis安装配置: .安装gcc : yum install gcc-c++ .使用FTP工具FileZilla上传redis安装包到linux根目录下(当前步骤可以替换为:在root目录下执行 ...
- 1.redis安装配置
Redis 1.Redis安装: 说明: 1.也是一种类似于Memcached的kev-value机制的存储服务 2.是非关系型数据库(NoSQL)的一种. 3.官网:www.redis.io,中文网 ...
- CentOS 6.6下Redis安装配置记录
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/120.html?1455855209 在先前的文章中介绍过redis,以下 ...
- Redis安装配置与Jedis访问数据库
一.NOSQL概要 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.NoSQL数据库的四大分类 键值(Key-Value)存储数据库 这一类数据 ...
随机推荐
- js混淆、eval解密
js中的eval()方法就是一个js语言的执行器,它能把其中的参数按照JavaScript语法进行解析并执行,简单来说就是把原本的js代码变成了eval的参数,变成参数后代码就成了字符串,其中的一些字 ...
- Vuejs的一些总结
http://blog.csdn.net/xllily_11/article/details/52312044 原文链接:http://mrzhang123.github.io/2016/07/14/ ...
- 前端图片缓存之通过img标签加载GIF只能播放一次问题(转载)
最近项目中要求再网页中插入一张gif图片,让用户每次到达该位置时动一次,所以我们就制作了一张只动一次的gif图片通过img标签引入.当用户进入该位置时,通过remove()清除图片然后重新append ...
- linux之cp命令(转载)
Linux中使用cp命令复制文件(夹),本文就日常工作中常用的cp命令整理如下. 一.复制一个源文件到目标文件(夹). 命令格式为:cp 源文件 目标文件(夹) 这个是使用频率最多的命令,负责把一个源 ...
- Java编程的分期步骤(一)
日期:2018.8.12 星期一 博客期:005 不知不觉来到第五期了,先简单说一下Java环境!(虽然Java都自学完了才说....)首先,就是在网站上下载一个java包,之后把它下载到全英文的一个 ...
- json的转换操作
toJSON 把JS对象{ 'x': 2, 'y': 3 }转为JSON对象格式的字符串 不能转化字符串 比如"{ 'x': 2, 'y': 3 }" 可以转格式不标准的jso ...
- java基础概念整理(三)
1.对象的上转型 对象的上转型不能调用和使用子类对象新增的成员和变量,不能调用子类新增的方法. 上转型对象可以访问子类继承或者隐藏的成员变量,也可以调用子类继承或者子类重写的实例方法.因此如果子类重写 ...
- python网络爬虫笔记(四)
一.python中的高阶函数算法 1.sorted()函数的排序 sorted()函数是一个高阶函数,还可以接受一个key函数来实现自定义的函数排序,key指定的函数作用于每个序列元素上,并根据k ...
- PyCharm设置字体风格
设置字体风格:File—Setting—Editor-Color Scheme-Color Scheme Font-把Scheme设置为:WarmNeon
- 第三周学习总结-Java
2018年7月29日 这是暑假第三周.这一周我把找到的Java教学视频看完了. 本周学到了Java剩余的基础知识,比如:抽象类.接口.内部类.几种常用类.IO流.多态.多线程等等. 因为没有书,所以我 ...