描述 |
命令行选项
这里,传递的参数通过覆盖其他选项而具有最高优先级。-s 用于覆盖一项或多项设置。
scrapy crawl myspider-s LOG_FILE = scrapy.log |
每个爬虫的设置
爬虫可以有自己的设置,通过使用属性custom_settings覆盖项目的设置。
class DemoSpider(scrapy.Spider): name = 'demo' custom_settings = { 'SOME_SETTING': 'some value', } |
项目设置模块
在这里,您可以填充自定义设置,例如添加或修改 settings.py 文件中的设置。
|
每个命令的默认设置
每个 Scrapy 工具命令在 default_settings 属性中定义自己的设置,以覆盖全局默认设置。
|
默认全局设置
这些设置可以在scrapy.settings.default_settings模块中找到。
|
class DemoSpider(scrapy.Spider): name = 'demo' start_urls = ['http://example.com'] def parse(self, response): print("Existing settings: %s" % self.settings.attributes.keys())
class MyExtension(object): def __init__(self, log_is_enabled = false): if log_is_enabled: print("Enabled log") @classmethod def from_crawler(cls, crawler): settings = crawler.settings return cls(settings.getbool('LOG_ENABLED'))
设置和说明 |
AWS_ACCESS_KEY_ID
用于访问亚马逊网络服务。
默认值:无
|
AWS_SECRET_ACCESS_KEY
用于访问亚马逊网络服务。
默认值:无
|
BOT_NAME
可以用来构建User-Agent的bot名称。
默认值:'scrapybot'
|
CONCURRENT_ITEMS
用于并行处理的项目处理器中现有项目的最大数量。
默认值:100
|
CONCURRENT_REQUESTS
Scrapy 下载器执行的最大现有请求数。
默认值:16
|
CONCURRENT_REQUESTS_PER_DOMAIN
对任何单个域同时执行的最大现有请求数。
默认值:8
|
CONCURRENT_REQUESTS_PER_IP
同时对任何单个 IP 执行的最大现有请求数。
默认值:0
|
DEFAULT_ITEM_CLASS
用于表示字段的类。
默认值:'scrapy.item.Item'
|
DEFAULT_REQUEST_HEADERS
Scrapy 的 HTTP 请求使用的默认标头。
默认值-
{ 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9, */*;q=0.8', 'Accept-Language': 'en', } |
DEPTH_LIMIT
爬虫抓取任何站点的最大深度。
默认值:0
|
DEPTH_PRIORITY
一个整数,用于根据深度改变请求的优先级。
默认值:0
|
DEPTH_STATS
表示是否收集深度统计数据。
默认值:True
|
DEPTH_STATS_VERBOSE
启用此设置后,会在每个详细深度的统计信息中收集请求数。
默认值:False
|
DNSCACHE_ENABLED
用于在内存缓存中启用DNS。
默认值:True
|
DNSCACHE_SIZE
它定义了DNS在内存缓存中的大小。
默认值:10000
|
DNS_TIMEOUT
用于设置DNS处理查询的超时时间。
默认值:60
|
DOWNLOADER
它是用于抓取过程的下载器。
默认值:'scrapy.core.downloader.Downloader'
|
DOWNLOADER_MIDDLEWARES
它是一个包含下载器中间件及其命令的字典。
默认值:{}
|
DOWNLOADER_MIDDLEWARES_BASE
这是一个保存下载器中间件的字典,默认启用。
默认值-
{ 'scrapy.downloadermiddlewares.robotstxt.RobotsTxtMiddleware': 100, }
|
DOWNLOADER_STATS
此设置用于启用下载器统计信息。
默认值:True
|
DOWNLOAD_DELAY
它定义了下载器从站点下载页面之前的总时间。
默认值:0
|
DOWNLOAD_HANDLERS
这是一个带有下载处理程序的字典。
默认值:{}
|
DOWNLOAD_HANDLERS_BASE
这是一个默认启用下载处理程序的字典。
默认值-
{ 'file': 'scrapy.core.downloader.handlers.file.FileDownloadHandler', } |
DOWNLOAD_TIMEOUT
下载器超时前等待的总时间。
默认值:180
|
DOWNLOAD_MAXSIZE
下载器下载的最大响应大小。
默认值:1073741824 (1024MB)
|
DOWNLOAD_WARNSIZE
它定义了下载器要警告的响应大小。
默认值:33554432 (32MB)
|
DUPEFILTER_CLASS
用于检测和过滤重复请求的类。
默认值:'scrapy.dupefilters .RFPDupeFilter'
|
DUPEFILTER_DEBUG
此设置在设置为 true 时记录所有重复的过滤器。
默认值:False
|
EDITOR
用于使用edit命令编辑爬虫。
默认值:取决于环境
|
EXTENSIONS
这是一个在项目中启用了扩展的字典。
默认值:{}
|
EXTENSIONS_BASE
这是一个内置扩展的字典。
默认值:{ 'scrapy.extensions.corestats.CoreStats ': 0, }
|
FEED_TEMPDIR
该目录用于设置自定义文件夹,用于存放爬虫临时文件。
|
ITEM_PIPELINES
这是一个有管道的字典。
默认值:{}
|
LOG_ENABLED
定义是否启用日志记录。
默认值:True
|
LOG_ENCODING
它定义了用于日志记录的编码类型。
默认值:'utf-8'
|
LOG_FILE
用于输出日志的文件名。
默认值:无
|
LOG_FORMAT
这是一个可以格式化日志消息的字符串。
默认值:'%(asctime)s [%(name)s] %(levelname)s: %(message)s'
|
LOG_DATEFORMAT
这是一个可以格式化日期/时间的字符串。
默认值:'%Y-%m-%d %H:%M:%S'
|
LOG_LEVEL
它定义了最小日志级别。
默认值:'DEBUG'
|
LOG_STDOUT
此设置如果设置为true,您的所有进程输出都将出现在日志中。
默认值:False
|
MEMDEBUG_ENABLED
定义是否开启内存调试。
默认值:False
|
MEMDEBUG_NOTIFY
它定义了在启用内存调试时发送到特定地址的内存报告。
默认值:[ ]
|
MEMUSAGE_ENABLED
它定义了当 Scrapy 进程超过内存限制时是否启用内存使用。
默认值:错误
|
MEMUSAGE_LIMIT_MB
它定义了允许的内存的最大限制(以兆字节为单位)。
默认值:0
|
MEMUSAGE_CHECK_INTERVAL_SECONDS
用于通过设置间隔的长度来检查当前的内存使用情况。
默认值:60.0
|
MEMUSAGE_NOTIFY_MAIL
用于在内存达到限制时用邮件列表通知。
默认值:False
|
MEMUSAGE_REPORT
定义是否在关闭每个爬虫时发送内存使用报告。
默认值:False
p> |
MEMUSAGE_WARNING_MB
它定义了在发送警告之前允许的总内存。
默认值:0
|
NEWSPIDER_MODULE
这是一个使用 genspider 命令创建新爬虫的模块。
默认值:''
|
RANDOMIZE_DOWNLOAD_DELAY
它定义了从站点下载请求时 Scrapy 等待的随机时间。
默认值: 真的
|
REACTOR_THREADPOOL_MAXSIZE
它定义了反应器线程池的最大大小。
默认值:10
|
REDIRECT_MAX_TIMES
它定义了一个请求可以被重定向的次数。
默认值:20
|
REDIRECT_PRIORITY_ADJUST
此设置设置后,调整请求的重定向优先级。
默认值:+2
|
RETRY_PRIORITY_ADJUST
此设置设置后,调整请求的重试优先级。
默认值:-1
|
ROBOTSTXT_OBEY
当设置为
true 时,Scrapy 遵守 robots.txt 政策。
默认值:False
|
SCHEDULER
它定义了用于抓取目的的调度器。
默认值:'scrapy.core.scheduler.Scheduler '
|
SPIDER_CONTRACTS
是项目中的字典,有爬虫合约,用来测试爬虫。
默认值:{}
|
SPIDER_CONTRACTS_BASE
这是一个保存 Scrapy 合约的字典,默认在 Scrapy 中启用。
默认值-
{ 'scrapy.contracts.default.UrlContract' : 1, 'scrapy.contracts.default.ReturnsContract': 2, } |
SPIDER_LOADER_CLASS
它定义了一个实现
SpiderLoader API来加载爬虫的类。
默认值: 'scrapy.spiderloader.SpiderLoader'
|
SPIDER_MIDDLEWARES
这是一个包含爬虫中间件的字典。
默认值:{}
|
SPIDER_MIDDLEWARES_BASE
这是一个包含爬虫中间件的字典,默认在 Scrapy 中启用。
默认值-
{
'scrapy.spidermiddlewares.httperror.HttpErrorMiddleware': 50,
}
|
SPIDER_MODULES
这是一个包含 Scrapy 将寻找的爬虫的模块列表。
默认值:[]
|
STATS_CLASS
该类实现了
Stats Collector API 来收集统计数据。
默认值: 'scrapy.statscollectors.MemoryStatsCollector'
|
STATS_DUMP
此设置设置为 true 时,会将统计信息转储到日志中。
默认值:True
|
STATSMAILER_RCPTS
爬虫完成抓取后,Scrapy 使用此设置发送统计信息。
默认值:[]
|
TELNETCONSOLE_ENABLED
定义是否启用telnetconsole。
默认值:True
|
TELNETCONSOLE_PORT
它定义了telnet 控制台的端口。
默认值:[6023, 6073]
|
TEMPLATES_DIR
这是一个包含模板的目录,可以在创建新项目时使用。
默认值:scrapy中的模板目录模块
|
URLLENGTH_LIMIT
它定义了被抓取的 URL 允许的 URL 长度的最大限制。
默认值:2083
|
USER_AGENT
它定义了在抓取站点时要使用的用户代理。
默认值:"Scrapy/VERSION (+ http://scrapy.org)"
|