创建scrapy项目
scrapy startproject 项目名
创建爬虫
scrapy genspider 爬虫名 爬取网站地址
修改spiders下面的py文件
from scrapy_redis.spiders import RedisSpider class ManhuataiSpider(RedisSpider): name = 'manhuatai' # 爬虫名 allowed_domains = ['www.manhuatai.com'] # 搜索域名范围 redis_key = 'myspider:start_urls' # 添加指定url(不要默认启动地址) def parse(self, response): pass
修改配置文件 settings.py
# 使用scrapy_redis的去重组件, 在redis中去重 DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter" # 使用了scrapy_redis的调度器,在redis里分配请求 SCHEDULER = "scrapy_redis.scheduler.Scheduler" # 在redis中保持scrapy_redis用到各个队列(不清理redis queues)可暂停和恢复 SCHEDULER_PERSIST = True # redis服务器地址 REDIS_HOST = '192.168.21.176' # 端口 REDIS_PORT = 6379 # 设置cmd中的输出级别 LOG_LEVEL = 'ERROR' # 编码 FEED_EXPORT_ENCODING = 'utf-8'
通过 scrapy 方法执行爬虫的py文件(也可以分次执行多条),爬虫(们)将处于等待准备状态:
scrapy runspider 爬虫名
在Master端的redis-cli输入push指令
或者在Redis可视化工具中执行
lpush myspider:start_urls 需要爬取网站的初始网址