当前位置: 首页 > news >正文

关于scrapy模块中setting.py文件的介绍

作用

在Scrapy框架中,settings.py 文件起着非常重要的作用,它用于配置和控制整个Scrapy爬虫项目的行为、性能和功能。

setting.py文件的介绍

# Scrapy settings for haodaifu project
#
# For simplicity, this file contains only settings considered important or
# commonly used. You can find more settings consulting the documentation:
#
#     https://docs.scrapy.org/en/latest/topics/settings.html
#     https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
#     https://docs.scrapy.org/en/latest/topics/spider-middleware.html# 设置爬虫的名称
BOT_NAME = "spidername"# 指定包含的爬虫代码的模块
SPIDER_MODULES = ["spidername.spiders"]
NEWSPIDER_MODULE = "spidername.spiders"# 设置用户代理,用于模拟浏览器或特定的爬虫身份
# Crawl responsibly by identifying yourself (and your website) on the user-agent
USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"# 配置爬虫是否遵循robots.txt柜子
# Obey robots.txt rules
ROBOTSTXT_OBEY = False# 控制并发请求的数量(默认为16)
# Configure maximum concurrent requests performed by Scrapy (default: 16)
CONCURRENT_REQUESTS = 64# 设置下载延迟,控制请求之间的时间间隔,以避免对目标服务器造成过大负载
# Configure a delay for requests for the same website (default: 0)
# See https://docs.scrapy.org/en/latest/topics/settings.html#download-delay
# See also autothrottle settings and docs
DOWNLOAD_DELAY = 3# 配置每个域名的最大并发请求数
# The download delay setting will honor only one of:
CONCURRENT_REQUESTS_PER_DOMAIN = 16# 设置每个IP地址的最大并发请求数
CONCURRENT_REQUESTS_PER_IP = 16# 启用或禁用cookies
# Disable cookies (enabled by default)
COOKIES_ENABLED = False# 启用或禁用Telnet控制台
# Disable Telnet Console (enabled by default)
TELNETCONSOLE_ENABLED = False# 默认的请求头
# Override the default request headers:
DEFAULT_REQUEST_HEADERS = {'Referer': 'https://www.xxx.com/','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36',
}# 启用或禁用爬虫中间件
# Enable or disable spider middlewares
# See https://docs.scrapy.org/en/latest/topics/spider-middleware.html
# 爬虫中间件及其顺序
SPIDER_MIDDLEWARES = {"spidername.middlewares.SpidernameSpiderMiddleware": 543,
}# 启用或禁用下载中间件
# Enable or disable downloader middlewares
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
# 下载中间件及其顺序
DOWNLOADER_MIDDLEWARES = {"spidername.middlewares.SpidernameDownloaderMiddleware": 543,
}# 启用和配置scrapy扩展
# Enable or disable extensions
# See https://docs.scrapy.org/en/latest/topics/extensions.html
EXTENSIONS = {"scrapy.extensions.telnet.TelnetConsole": None,
}# 启用或禁用项目管道
# Configure item pipelines
# See https://docs.scrapy.org/en/latest/topics/item-pipeline.html
# 项目管道
ITEM_PIPELINES = {"spidername.pipelines.spidernamePipeline": 300,
}# Enable and configure the AutoThrottle extension (disabled by default)
# See https://docs.scrapy.org/en/latest/topics/autothrottle.html
# 是否启用自动限速
AUTOTHROTTLE_ENABLED = True# 初始化下载延迟(秒) 
# The initial download delay
AUTOTHROTTLE_START_DELAY = 5# 最大下载延迟(秒)
# The maximum download delay to be set in case of high latencies
AUTOTHROTTLE_MAX_DELAY = 60# The average number of requests Scrapy should be sending in parallel to
# each remote server
# scrapy 的目标并发请求数
AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0# Enable showing throttling stats for every response received:
# 是否启用自动限速调试模式
AUTOTHROTTLE_DEBUG = False# 启用和配置http缓存
# Enable and configure HTTP caching (disabled by default)
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html#httpcache-middleware-settings
# 是否启用HTTP缓存
HTTPCACHE_ENABLED = True# 缓存超时时间(秒)
HTTPCACHE_EXPIRATION_SECS = 0# 缓存目录
HTTPCACHE_DIR = "httpcache"# 忽略缓存的HTTP状态码列表
HTTPCACHE_IGNORE_HTTP_CODES = []HTTPCACHE_STORAGE = "scrapy.extensions.httpcache.FilesystemCacheStorage"# Set settings whose default value is deprecated to a future-proof value
REQUEST_FINGERPRINTER_IMPLEMENTATION = "2.7"
TWISTED_REACTOR = "twisted.internet.asyncioreactor.AsyncioSelectorReactor"# 输出feed的编码
FEED_EXPORT_ENCODING = "utf-8"

http://www.lryc.cn/news/382462.html

相关文章:

  • laravel Blade 指令的趣味性
  • 【面试题】等保(等级保护)的工作流程
  • python调用麦克风和扬声器,并调用阿里云实时语音转文字
  • 描述在React中集成第三方库(如Redux或React Router)的常见模式。
  • JavaScript语法特性篇-空值合并运算符(??)
  • rancher快照备份至S3
  • ChatGPT API教程在线对接OpenAI APIKey技术教程
  • 随心而遇,跟着感觉走
  • LeetCode题练习与总结:只出现一次的数字--136
  • 常见的中间件都在解决什么问题?
  • 微信小程序-scroll-view实现上拉加载和下拉刷新
  • TS中interface和type的区别
  • Hightec编译器系列之高级调试技巧精华总结
  • 【论文笔记】LoRA LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS
  • 【Sa-Token|4】Sa-Token微服务项目应用
  • 鸿蒙开发系统基础能力:【@ohos.hilog (日志打印)】
  • SpringMVC系列十: 中文乱码处理与JSON处理
  • 使用MyBatisPlus进行字段的自动填充
  • python爬虫之aiohttp多任务异步爬虫
  • 1964springboot VUE小程序在线学习管理系统开发mysql数据库uniapp开发java编程计算机网页源码maven项目
  • 【前端项目笔记】3 用户管理
  • 【文献及模型、制图分享】基于SSP-RCP不同情景的京津冀地区土地覆被变化模拟
  • 基于单片机的智能台灯控制系统
  • PrestaShop的一些使用介绍
  • 零基础女生如何入门人工智能,从哪里下手?学习时间大概要多久?
  • 简答分享python学习进修网站
  • linux高级编程(I/O)
  • Java面试——认证与授权
  • 【经典算法OJ题讲解】
  • 大数据面试题之Zookeeper面试题