企业网站建设公司公司,公司网站怎么登录,品牌建设模型,网站建设功能文案1#xff0c;指纹去重原理存在于 scrapy.util.requests 里面 需要安装的包 pip install scrapy-redis-cluster # 安装模块 pip install scrapy-redis-cluster0.4 # 安装模块时指定版本 pip install --upgrade scrapy-redis-cluster # 升级模块版本 2#xff0c;setting配置
…1指纹去重原理存在于 scrapy.util.requests 里面 需要安装的包 pip install scrapy-redis-cluster # 安装模块 pip install scrapy-redis-cluster0.4 # 安装模块时指定版本 pip install --upgrade scrapy-redis-cluster # 升级模块版本 2setting配置
# -*- coding: utf-8 -*-BOT_NAME zonghengSPIDER_MODULES [rankxs.spiders]
NEWSPIDER_MODULE rankxs.spiders# Crawl responsibly by identifying yourself (and your website) on the user-agent# Obey robots.txt rules
ROBOTSTXT_OBEY False######################################################
##############下面是Scrapy-Redis相关配置################
####################################################### 指定Redis的主机名和端口
REDIS_HOST localhost
REDIS_PORT 6379# 调度器启用Redis存储Requests队列
SCHEDULER scrapy_redis.scheduler.Scheduler# 确保所有的爬虫实例使用Redis进行重复过滤
DUPEFILTER_CLASS scrapy_redis.dupefilter.RFPDupeFilter# 将Requests队列持久化到Redis可支持暂停或重启爬虫
SCHEDULER_PERSIST True# Requests的调度策略默认优先级队列
SCHEDULER_QUEUE_CLASS scrapy_redis.queue.PriorityQueue# 将爬取到的items保存到Redis 以便进行后续处理
ITEM_PIPELINES {rankxs.pipelines.RankxsPipeline: 1,scrapy_redis.pipelines.RedisPipeline: 2
}
此处的关键点在于管道的先后顺序顺序错了数据库的数据会进不去
3指纹去重在redis里面的显示,用redis做去重逻辑--先遣队
zongheng:items 和 zongheng:dupefilters 两个key
一个是items 里面的数据 ,另外一个则是已经爬取的 md5 url
爬虫爬取会先去查询redis里面的dupefiters md5 url
4,多爬虫任务可以在同一个文件进行执行CrawlerProcess和CrawlerRunner
crawler.CrawlerRunner
from scrapy.utils.project import get_project_settings# processcrawler.CrawlerProcess(get_project_settings())
# process.crawl(ZonghengSpider)
# process.start(stop_after_crawlFalse)
程序执行报错
关键点在于stop_after_crawl配置和注释TWISTED_REACTOR可以避免具体原因可以去看源码
5关于多功能的
from scrapy.linkextractors import LinkExtractor
不论是scrapy 还是scrawlspider 都可以用的链接提取器比较实用