上一篇写了setting的一部分设置,继续
1:DOWNLOAD_MAXSIZE#设置response大小
设置将要下载的response最大size,如果想禁用设置为0
#Default:1073741824 (1024MB)
也可以在爬虫中使用download_maxsize属性设置
2:DOWNLOAD_WARNSIZE
#警告还是预告??的大小
##Default: 33554432 (32Mb)
爬虫也可以设置
3:DUPEFILTER_CLASS#设置检测过滤重复请求的类
默认: 'scrapy.dupefilter.RFPDupeFilter'
用于设置检测过滤重复请求的类。
默认的 (RFPDupeFilter) 过滤器基于scrapy.utils.request.request_fingerprint 函数生成的请求fingerprint(指纹)。 如果您需要修改检测的方式,您可以继承 RFPDupeFilter 并覆盖其 request_fingerprint 方法。 该方法接收 Request 对象并返回其fingerprint(一个字符串)。
4:DUPEFILTER_DEBUG##记录重复的请求,这是执行记录的行为
###默认: False
##默认情况下, RFPDupeFilter 只记录第一次重复的请求。
设置 DUPEFILTER_DEBUG 为 True 将会使其记录所有重复的requests
5:EDITOR###设置编辑器?没用感觉
默认: depends on the environment
###执行 edit 命令编辑spider时使用的编辑器。
其默认为 EDITOR 环境变量。如果该变量未设置,其默认为 vi (Unix系统) 或者 IDLE编辑器(Windows)。
6:EXTENSIONS##扩展的是否启用以及顺序
###默认: {}###保存项目中启用的扩展插件及其顺序的字典。
7:EXTENSIONS_BASE##一些默认开启的扩展插件,如要关闭将对应的值变成none,但是只能在扩展字典中设置
默认:
{
'scrapy.contrib.corestats.CoreStats': 0,
'scrapy.telnet.TelnetConsole': 0,
'scrapy.contrib.memusage.MemoryUsage': 0,
'scrapy.contrib.memdebug.MemoryDebugger': 0,
'scrapy.contrib.closespider.CloseSpider': 0,
'scrapy.contrib.feedexport.FeedExporter': 0,
'scrapy.contrib.logstats.LogStats': 0,
'scrapy.contrib.spiderstate.SpiderState': 0,
'scrapy.contrib.throttle.AutoThrottle': 0,
}
可用的插件列表。需要注意,有些插件需要通过设定来启用。默认情况下, 该设定包含所有稳定(stable)的内置插件。
8:ITEM_PIPELINES
默认: {}
保存项目中启用的pipeline及其顺序的字典。该字典默认为空,值(value)任意。 不过值(value)习惯设定在0-1000范围内。
为了兼容性,ITEM_PIPELINES 支持列表,不过已经被废弃了。
样例:
ITEM_PIPELINES = {
'mybot.pipelines.validate.ValidateMyItem': 300,
'mybot.pipelines.validate.StoreMyItem': 800,
}
9:ITEM_PIPELINES_BASE
####默认: {}###保存项目中默认启用的pipeline的字典。 永远不要在项目中修改该设定,而是修改 ITEM_PIPELINES 。
10:LOG_ENABLED###默认: True###是否启用logging
11:LOG_ENCODING###默认: ‘utf-8’###logging使用的编码。
12:LOG_FILE###默认: None
##logging输出的文件名。如果为None,则使用标准错误输出(standard error)。
加1:LOG_FORMAT##格式化输出log的字符串,有默认值
Default: '%(asctime)s [%(name)s] %(levelname)s: %(message)s'
加2:LOG_DATEFORMAT##log输出时的格式化输出
Default: '%Y-%m-%d %H:%M:%S'
输出位置在log_format输出位置的asctime处
13:LOG_LEVEL###默认: ‘DEBUG’
###log的最低级别。可选的级别有: CRITICAL、 ERROR、WARNING、INFO、DEBUG。更多内容请查看 Logging 。
14:LOG_STDOUT####默认: False此处决定log的输出位置
###如果为 True ,进程所有的标准输出(及错误)将会被重定向到log中。例如, 执行 print 'hello' ,其将会在Scrapy log中显示。
15:MEMDEBUG_ENABLED###默认: False##是否启用内存调试(memory debugging)。
16:MEMDEBUG_NOTIFY##启用则要制定内存报告输出位置否则为空输出到log中
默认: []
如果该设置不为空,当启用内存调试时将会发送一份内存报告到指定的地址;否则该报告将写到log中。
样例:
MEMDEBUG_NOTIFY = ['user@example.com']
17:MEMUSAGE_ENABLED##启用内存插件
默认: False
Scope: scrapy.contrib.memusage
是否启用内存使用插件。当Scrapy进程占用的内存超出限制时,该插件将会关闭Scrapy进程, 同时发送email进行通知。
18:MEMUSAGE_LIMIT_MB##设置最大内存限制默认为0,不限制
默认: 0
Scope: scrapy.contrib.memusage
在关闭Scrapy之前所允许的最大内存数(单位: MB)(如果 MEMUSAGE_ENABLED为True)。 如果为0,将不做限制。
19:MEMUSAGE_NOTIFY_MAIL##达到内存发送邮件,邮件设置
默认: False
Scope: scrapy.contrib.memusage
达到内存限制时通知的email列表。
Example:
MEMUSAGE_NOTIFY_MAIL = ['user@example.com']
20:MEMUSAGE_REPORT##设置spider关闭时是否发送报告
默认: False
Scope: scrapy.contrib.memusage
每个spider被关闭时是否发送内存使用报告。
21: MEMUSAGE_WARNING_MB前提启用内存扩展
默认: 0
Scope: scrapy.contrib.memusage
在发送警告email前所允许的最大内存数(单位: MB)(如果 MEMUSAGE_ENABLED为True)。 如果为0,将不发送警告。
22: NEWSPIDER_MODULE##此处应该在genspider命令之后会覆盖默认值
默认: ' '
使用 genspider 命令创建新spider的模块。
样例:
NEWSPIDER_MODULE = 'mybot.spiders_dev'
23:RANDOMIZE_DOWNLOAD_DELAY##访问同一站点是访问随机延迟
默认: True
如果启用,当从相同的网站获取数据时,Scrapy将会等待一个随机的值 (0.5到1.5之间的一个随机值 * DOWNLOAD_DELAY)。
该随机值降低了crawler被检测到(接着被block)的机会。某些网站会分析请求, 查找请求之间时间的相似性。
随机的策略与 wget --random-wait 选项的策略相同。
若 DOWNLOAD_DELAY 为0(默认值),该选项将不起作用
加3:REACTOR_THREADPOOL_MAXSIZE##应该是返回输出的线程池,最大默认10个,报错dns解析情况,存储等,io不足可调大这个值
Default: 10
扭曲反应器螺纹池尺寸的最大极限。这是一个常用的多线程线程池。线程DNS解析器,BulkFieldSt存储,S3FilesStore只是举几个例子。如果您遇到阻塞IO不足的问题,则增加该值
24:REDIRECT_MAX_TIMES##允许重定向最大次数,程序有限性
默认: 20
定义request允许重定向的最大次数。超过该限制后该request直接返回获取到的结果。 对某些任务我们使用Firefox默认值。
25:REDIRECT_MAX_METAREFRESH_DELAY###限制自动重定向的延迟时间
默认: 100
有些网站使用 meta-refresh 重定向到session超时页面, 因此我们限制自动重定向到最大延迟(秒)。
26:REDIRECT_PRIORITY_ADJUST##修改重定向请求相对于原始请求的优先级
默认: +2
修改重定向请求相对于原始请求的优先级。 负数意味着更多优先级。
27:ROBOTSTXT_OBEY###尊重robots,这个好吧
默认: False
Scope: scrapy.contrib.downloadermiddleware.robotstxt
如果启用,Scrapy将会尊重 robots.txt策略。更多内容请查看 RobotsTxtMiddleware 。
28:SCHEDULER#这个还是不要改了
###默认: 'scrapy.core.scheduler.Scheduler'###用于爬取的调度器
29:SPIDER_CONTRACTS
默认:{}
保存项目中启用用于测试spider的scrapy contract及其顺序的字典。 更多内容请参考 Spiders Contracts 。
30:PIDER_CONTRACTS_BASE####启用的scrapy contract的字典
默认:
{
'scrapy.contracts.default.UrlContract' : 1,
'scrapy.contracts.default.ReturnsContract': 2,
'scrapy.contracts.default.ScrapesContract': 3,
}
保存项目中默认启用的scrapy contract的字典。 永远不要在项目中修改该设定,而是修改 SPIDER_CONTRACTS 。更多内容请参考 Spiders Contracts 。
加4:SPIDER_LOADER_CLASS使用spider loader机制时的类,不要改
Default: 'scrapy.spiderloader.SpiderLoader'
31:SPIDER_MIDDLEWARES##spider中间件
默认:: {}
保存项目中启用的下载中间件及其顺序的字典。
32:SPIDER_MIDDLEWARES_BASEspider默认中间件
默认:
{
'scrapy.contrib.spidermiddleware.httperror.HttpErrorMiddleware': 50,
'scrapy.contrib.spidermiddleware.offsite.OffsiteMiddleware': 500,
'scrapy.contrib.spidermiddleware.referer.RefererMiddleware': 700,
'scrapy.contrib.spidermiddleware.urllength.UrlLengthMiddleware': 800,
'scrapy.contrib.spidermiddleware.depth.DepthMiddleware': 900,
}
保存项目中默认启用的spider中间件的字典。 永远不要在项目中修改该设定,而是修改 SPIDER_MIDDLEWARES 。
33:SPIDER_MODULES### Scrapy搜索spider的模块列表,就是爬虫列表
默认: []。
样例:
SPIDER_MODULES = ['mybot.spiders_prod', 'mybot.spiders_dev']
34:STATS_CLASS## 收集数据的类,这是默认的就不要改了
默认: 'scrapy.statscol.MemoryStatsCollector'
收集数据的类。该类必须实现 状态收集器(Stats Collector) API
35:STATS_DUMP####默认: True###当spider结束时dump Scrapy状态数据 (到Scrapy log中)。
36:STATSMAILER_RCPTS###默认: [] (空list)###spider完成爬取后发送Scrapy数据。
37:TELNETCONSOLE_ENABLED#是否启用终端##默认: True表明 telnet 终端 (及其插件)是否启用的布尔值。
38:TELNETCONSOLE_PORT###默认: [6023, 6073]###telnet终端使用的端口范围。如果设置为 None 或 0 , 则使用动态分配的端口。更多内容请查看 Telnet终端(Telnet Console) 。
39:TEMPLATES_DIR###默认: scrapy模块内部的 templates使用 startproject 命令创建项目时查找模板的目录
40:URLLENGTH_LIMIT
默认: 2083
Scope: contrib.spidermiddleware.urllength
爬取URL的最大长度。
41:USER_AGENT#这还有很多方法
默认: “Scrapy/VERSION (+http://scrapy.org)”
爬取的默认User-Agent,除非被覆盖。
此处了只是简单的搬砖及自己的理解,由于是0.24,不是最新版,以后会慢慢更新上来
还有些是文档中其他组件的设置,可对应自行查看:
AJAXCRAWL_ENABLED
AUTOTHROTTLE_DEBUG
AUTOTHROTTLE_ENABLED
AUTOTHROTTLE_MAX_DELAY
AUTOTHROTTLE_START_DELAY
CLOSESPIDER_ERRORCOUNT
CLOSESPIDER_ITEMCOUNT
CLOSESPIDER_PAGECOUNT
CLOSESPIDER_TIMEOUT
COMMANDS_MODULE
COMPRESSION_ENABLED
COOKIES_DEBUG
COOKIES_ENABLED
FEED_EXPORTERS
FEED_EXPORTERS_BASE
FEED_EXPORT_FIELDS
FEED_FORMAT
FEED_STORAGES
FEED_STORAGES_BASE
FEED_STORE_EMPT
FEED_URI
FILES_EXPIRES
FILES_STORE
HTTPCACHE_DBM_MODULE
HTTPCACHE_DIR
HTTPCACHE_ENABLED
HTTPCACHE_EXPIRATION_SECS
HTTPCACHE_GZIP
HTTPCACHE_IGNORE_HTTP_CODES
HTTPCACHE_IGNORE_MISSING
HTTPCACHE_IGNORE_SCHEMES
HTTPCACHE_POLICY
HTTPCACHE_STORAGE
HTTPERROR_ALLOWED_CODES
HTTPERROR_ALLOW_ALL
IMAGES_EXPIRES
IMAGES_MIN_HEIGHT
IMAGES_MIN_WIDTH
IMAGES_STORE
IMAGES_THUMBS
MAIL_FROM
MAIL_HOST
MAIL_PASS
MAIL_PORT
MAIL_SSL
MAIL_TLS
MAIL_USER
METAREFRESH_ENABLED
REDIRECT_ENABLED
REDIRECT_MAX_METAREFRESH_DELAY
REDIRECT_MAX_TIMES
REFERER_ENABLED
RETRY_HTTP_CODES
RETRY_TIMES
TELNETCONSOLE_HOST
TELNETCONSOLE_PORT
WEBSERVICE_ENABLED
WEBSERVICE_HOST
WEBSERVICE_LOGFILE
WEBSERVICE_PORT