1. # -*- coding: utf-8 -*-
  2.  
  3. # Scrapy settings for lizi project
  4. #
  5. # For simplicity, this file contains only settings considered important or
  6. # commonly used. You can find more settings consulting the documentation:
  7. #
  8. # http://doc.scrapy.org/en/latest/topics/settings.html
  9. # http://scrapy.readthedocs.org/en/latest/topics/downloader-middleware.html
  10. # http://scrapy.readthedocs.org/en/latest/topics/spider-middleware.html
  11.  
  12. BOT_NAME = 'lizi'
  13.  
  14. SPIDER_MODULES = ['lizi.spiders']
  15. NEWSPIDER_MODULE = 'lizi.spiders'
  16.  
  17. # Crawl responsibly by identifying yourself (and your website) on the user-agent
  18. USER_AGENT = 'lizi (+http://www.yourdomain.com)'
  19. '''默认: "Scrapy/VERSION (+http://scrapy.org)"
  20.  
  21. 爬取的默认User-Agent,除非被覆盖。'''
  22. # Obey robots.txt rules
  23. #ROBOTSTXT_OBEY = True
  24. ROBOTSTXT_OBEY = False
  25. '如果启用,Scrapy将会尊重 robots.txt策略'
  26. CONCURRENT_REQUESTS = 32
  27. '''***********************
  28. Configure maximum concurrent requests performed by Scrapy (default: 16)
  29. Scrapy downloader 并发请求(concurrent requests)的最大值
  30. '''
  31. # Configure a delay for requests for the same website (default: 0)
  32. # See http://scrapy.readthedocs.org/en/latest/topics/settings.html#download-delay
  33. # See also autothrottle settings and docs
  34.  
  35. DOWNLOAD_DELAY = 3
  36. '''************************
  37. 下载器在下载同一个网站下一个页面前需要等待的时间。
  38. 该选项可以用来限制爬取速度, 减轻服务器压力。同时也支持小数:
  39. 该设定影响(默认启用的) RANDOMIZE_DOWNLOAD_DELAY 设定。 默认情况下,Scrapy在两个请求间不等待一个固定的值,
  40. 而是使用0.5到1.5之间的一个随机值 * DOWNLOAD_DELAY 的结果作为等待间隔。
  41. 当 CONCURRENT_REQUESTS_PER_IP 非0时,延迟针对的是每个ip而不是网站。
  42. 另外您可以通过spider的 download_delay 属性为每个spider设置该设定。
  43. '''
  44.  
  45. # The download delay setting will honor only one of:
  46. CONCURRENT_REQUESTS_PER_DOMAIN = 16
  47. '对单个网站进行并发请求的最大值'
  48. CONCURRENT_REQUESTS_PER_IP = 16
  49.  
  50. '''
  51. 对单个IP进行并发请求的最大值。如果非0,则忽略 CONCURRENT_REQUESTS_PER_DOMAIN 设定,
  52. 使用该设定。 也就是说,并发限制将针对IP,而不是网站。
  53. 该设定也影响 DOWNLOAD_DELAY: 如果 CONCURRENT_REQUESTS_PER_IP 非0,
  54. 下载延迟应用在IP而不是网站上。
  55. '''
  56.  
  57. # Disable cookies (enabled by default)
  58. COOKIES_ENABLED = False
  59. '是否启用cookies middleware。如果关闭,cookies将不会发送给web server。'
  60. # Disable Telnet Console (enabled by default)
  61. TELNETCONSOLE_ENABLED = False
  62. '表明 telnet 终端 (及其插件)是否启用的布尔值。'
  63. # Override the default request headers:
  64. DEFAULT_REQUEST_HEADERS = {
  65. 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  66. 'Accept-Language': 'en',}
  67. 'Scrapy HTTP Request使用的默认header。由 DefaultHeadersMiddleware 产生。这里通常可以自己添加更完整'
  68. # Enable or disable spider middlewares
  69. # See http://scrapy.readthedocs.org/en/latest/topics/spider-middleware.html
  70.  
  71. SPIDER_MIDDLEWARES = {
  72. 'lizi.middlewares.MyCustomSpiderMiddleware': 543,
  73. }
  74. '''要启用spider中间件,您可以将其加入到 SPIDER_MIDDLEWARES 设置中。
  75. 该设置是一个字典,键位中间件的路径,值为中间件的顺序(order)。如上就是开启'''
  76. # Enable or disable downloader middlewares
  77. # See http://scrapy.readthedocs.org/en/latest/topics/downloader-middleware.html
  78. DOWNLOADER_MIDDLEWARES = {
  79. 'lizi.middlewares.MyCustomDownloaderMiddleware': 543,
  80. }
  81. '''保存项目中启用的下载中间件及其顺序的字典。 更多内容请查看 激活下载器中间件
  82. DOWNLOADER_MIDDLEWARES 设置会与Scrapy定义的 DOWNLOADER_MIDDLEWARES_BASE 设置合并(但不是覆盖), 而后根据顺序(order)进行排序,
  83. 最后得到启用中间件的有序列表: 第一个中间件是最靠近引擎的,最后一个中间件是最靠近下载器的。
  84. 关于如何分配中间件的顺序请查看 DOWNLOADER_MIDDLEWARES_BASE 设置,
  85. 而后根据您想要放置中间件的位置选择一个值。
  86. 由于每个中间件执行不同的动作,您的中间件可能会依赖于之前(或者之后)执行的中间件,
  87. 因此顺序是很重要的'''
  88. # Enable or disable extensions
  89. # See http://scrapy.readthedocs.org/en/latest/topics/extensions.html
  90. EXTENSIONS = { 'scrapy.extensions.telnet.TelnetConsole': None,
  91. }
  92.  
  93. # Configure item pipelines
  94. # See http://scrapy.readthedocs.org/en/latest/topics/item-pipeline.html
  95.  
  96. ITEM_PIPELINES = {
  97. 'lizi.pipelines.SomePipeline': 300,
  98. }
  99. #这里如果一个项目多个spiders的时候,每次运行的时候每次要在这里制定一个对应的pipeline
  100. '''
  101. 保存项目中启用的pipeline及其顺序的字典。该字典默认为空,值(value)任意。 不过值(value)习惯设定在0-1000范围内。
  102. 为了兼容性,ITEM_PIPELINES 支持列表,不过已经被废弃了。
  103. 样例:
  104. ITEM_PIPELINES = {
  105. 'mybot.pipelines.validate.ValidateMyItem': 300,
  106. 'mybot.pipelines.validate.StoreMyItem': 800,
  107. }'''
  108.  
  109. # Enable and configure the AutoThrottle extension (disabled by default)
  110. # See http://doc.scrapy.org/en/latest/topics/autothrottle.html
  111. AUTOTHROTTLE_ENABLED = True
  112. '启用自动限速AutoThrottle扩展'
  113. # The initial download delay
  114. AUTOTHROTTLE_START_DELAY = 5
  115. '初始下载延迟(单位:秒)'
  116. # The maximum download delay to be set in case of high latencies
  117. AUTOTHROTTLE_MAX_DELAY = 60
  118. '初始下载延迟(单位:秒)'
  119. # The average number of requests Scrapy should be sending in parallel to
  120. # each remote server
  121. AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0
  122. # Enable showing throttling stats for every response received:
  123. AUTOTHROTTLE_DEBUG = False
  124. '起用AutoThrottle调试(debug)模式,展示每个接收到的response。 您可以通过此来查看限速参数是如何实时被调整的'
  125. # Enable and configure HTTP caching (disabled by default)
  126. # See http://scrapy.readthedocs.org/en/latest/topics/downloader-middleware.html#httpcache-middleware-settings
  127. HTTPCACHE_ENABLED = True
  128. 'HTTP缓存是否开启。'
  129. HTTPCACHE_EXPIRATION_SECS = 0
  130. '''缓存的request的超时时间,单位秒。
  131. 超过这个时间的缓存request将会被重新下载。如果为0,则缓存的request将永远不会超时。'''
  132. HTTPCACHE_DIR = 'httpcache'
  133. '''存储(底层的)HTTP缓存的目录。如果为空,则HTTP缓存将会被关闭。 如果为相对目录,则相对于项目数据目录(project data dir)。
  134. 更多内容请参考 默认的Scrapy项目结构 。'''
  135. HTTPCACHE_IGNORE_HTTP_CODES = []
  136. '''不缓存设置中的HTTP返回值(code)的request。'''
  137. HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'
  138. '实现缓存存储后端的类。'
  139.  
  140. #一下内容为默认setting.py文件没有的字段,但是可以自己添加
  141.  
  142. CONCURRENT_ITEMS
  143. '''
  144. 默认: 100
  145. Item Processor(即 Item Pipeline) 同时处理(每个response的)item的最大值。
  146. '''
  147.  
  148. DEFAULT_ITEM_CLASS
  149. '''默认: 'scrapy.item.Item'
  150. the Scrapy shell 中实例化item使用的默认类'''
  151.  
  152. DEPTH_LIMIT
  153. '''默认: 0
  154. 爬取网站最大允许的深度(depth)值。如果为0,则没有限制'''
  155. DEPTH_PRIORITY
  156. '''默认: 0
  157. 整数值。用于根据深度调整request优先级。
  158. 如果为0,则不根据深度进行优先级调整'''
  159. DEPTH_STATS
  160. '''
  161. 默认: True
  162. 是否收集最大深度数据。'''
  163. DEPTH_STATS_VERBOSE
  164. '''默认: False
  165. 是否收集详细的深度数据。如果启用,每个深度的请求数将会被收集在数据中。'''
  166.  
  167. DOWNLOAD_HANDLERS
  168. '''
  169. 默认: {}
  170. 保存项目中启用的下载处理器(request downloader handler)的字典。 例子请查看 DOWNLOAD_HANDLERS_BASE 。
  171. DOWNLOAD_HANDLERS_BASE
  172. 默认:
  173. {
  174. 'file': 'scrapy.core.downloader.handlers.file.FileDownloadHandler',
  175. 'http': 'scrapy.core.downloader.handlers.http.HttpDownloadHandler',
  176. 'https': 'scrapy.core.downloader.handlers.http.HttpDownloadHandler',
  177. 's3': 'scrapy.core.downloader.handlers.s3.S3DownloadHandler',
  178. }
  179. 保存项目中默认启用的下载处理器(request downloader handler)的字典。 永远不要在项目中修改该设定,而是修改 DOWNLOADER_HANDLERS 。
  180. 如果需要关闭上面的下载处理器,您必须在项目中的 DOWNLOAD_HANDLERS 设定中设置该处理器,并为其赋值为 None 。 例如,关闭文件下载处理器:
  181. DOWNLOAD_HANDLERS = {
  182. 'file': None,
  183. }'''
  184. DOWNLOAD_TIMEOUT
  185. '''
  186. 默认: 180
  187. 下载器超时时间(单位: 秒)。'''
  188.  
  189. LOG
  190. '''
  191. LOG_ENABLED
  192. 默认: True
  193. 是否启用logging。
  194. LOG_ENCODING
  195. 默认: 'utf-8'
  196. logging使用的编码。
  197. LOG_FILE
  198. 默认: None
  199. logging输出的文件名。如果为None,则使用标准错误输出(standard error)。
  200. LOG_LEVEL
  201. 默认: 'DEBUG'
  202. log的最低级别。可选的级别有: CRITICAL、 ERROR、WARNING、INFO、DEBUG。更多内容请查看 Logging 。
  203. LOG_STDOUT
  204. 默认: False
  205. 如果为 True ,进程所有的标准输出(及错误)将会被重定向到log中。例如, 执行 print 'hello' ,其将会在Scrapy log中显示。'''
  206.  
  207. RANDOMIZE_DOWNLOAD_DELAY
  208. '''
  209. 默认: True
  210. 如果启用,当从相同的网站获取数据时,Scrapy将会等待一个随机的值 (0.5到1.5之间的一个随机值 * DOWNLOAD_DELAY)。
  211. 该随机值降低了crawler被检测到(接着被block)的机会。某些网站会分析请求, 查找请求之间时间的相似性。
  212. 随机的策略与 wget --random-wait 选项的策略相同。
  213. 若 DOWNLOAD_DELAY 为0(默认值),该选项将不起作用
  214. '''

  

scrapy---setting的字段含义的更多相关文章

  1. R语言重要数据集分析研究——R语言数据集的字段含义

    R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...

  2. npm的package.json字段含义中文文档

    简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...

  3. 常用的scrapy setting

    原文请参考    Scrapy 爬虫入门教程十三 Settings(设置), 讲的很详细 官网参考  Settings 设置 Scrapy 设置允许您自定义所有 Scrapy 组件的行为,包括核心,扩 ...

  4. scrapy的allowed_domains设置含义

    设置allowed_domains的含义是过滤爬取的域名,在插件OffsiteMiddleware启用的情况下(默认是启用的),不在此允许范围内的域名就会被过滤,而不会进行爬取 但是有一个问题:像下面 ...

  5. Java序列化机制中的类版本问题 serialVersionUID的静态字段 含义

    Java序列化机制中的类版本问题 分类: [Java 基础]2014-10-31 21:13 480人阅读 评论(0) 收藏 举报   目录(?)[+]       原文地址:http://yanwu ...

  6. 屏幕字段结构SCREEN的字段含义

    在SAP屏幕中,一个字段就像.NET中的一个控件,这个字段对应一个SCREEN结构,就像控件的多个属性. SE11可以查看SCREEN结构中的字段,只是没有备注. 名称 长度 说明 NAME 屏幕字段 ...

  7. Android内存管理(5)*官方教程:Logcat内存日志各字段含义,查看当前内存快照,跟踪记录内存分配,用adb查看内存情况时各行列的含义,捕获内存快照的3种方法,如何让程序暴漏内存泄漏的方法

    Investigating Your RAM Usage In this document Interpreting Log Messages                 内存分析日志中各消息的含 ...

  8. iOS开发 Xcode中的Info.plist字段含义

    Info.plist用于向iOS提供关于app,bundle或者framework的一些重要信息.它指定了比如一个应用应该怎样启动,它如何被本地化,应用的名称,要显示的图标,还有更多.Info.pli ...

  9. scrapy setting 备注

    scrapy 脚本里面设置输出文件: process = CrawlerProcess(settings) process.settings.set('FEED_URI', 'wangyi.csv', ...

随机推荐

  1. 最大行走路线问题(DP)

    在一个NxN的棋盘上,每个格子里有若干个棋子,假设起点为左上角的格子,且每次只能向下或向右走一格,问怎样走才能得到最多的棋子. 这是很简单的递推题了. 因为只能向下或者向右,所以其实我们可以把棋盘看成 ...

  2. Algorithm——无重复字符的最长子串

    一.问题 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "a ...

  3. C# 后台解析json,简单方法 字符串序列化为对象,取值

    如果后台是一个JSON的字符串格式如下: string str = "{\"Success\":true,\"Msg\":\"成功!\&qu ...

  4. numpy数组的创建

    创建数组 创建ndarray 创建数组最简单的方法就是使用array函数.它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组. array函数创建数组 import ...

  5. 工具Sequel Pro简介

    从图中可以看到,sequel工作界面主要分成三部分,左边侧边显示的是当前所连接的数据库中存在的数据表,右侧上半部分则是用于写sql的地方,在Mac环境下按command+R键会执行你所写的sql,右侧 ...

  6. 打通版微社区(6):部署微信插件及开通QQ云服务

    写在前面: 此文是我最后写的.其实实际部署的时候,我是先安装了论坛并试图开通微信的微社区.发现微社区需要在微信公众平台的开发者中心里配置 "网页账号,网页授权获取用户基本信息"为论 ...

  7. [翻译] CNPGridMenu

    CNPGridMenu CNPGridMenu is a Mailbox style grid menu with a blurred background for iOS 7 & iOS 8 ...

  8. Django路由系统---Django重点之url别名

    django重点之url别名[参数名必须是name,格式是name="XXX] 不论后台路径如何进行修改路径,前台访问的路径不变,永远是alias, 这样方便开发 前台根据 {{ url & ...

  9. Java实例---简单的宠物管理系统

    代码分析 Cat.java package com.ftl.petshop; class Cat implements Pet { private String name; private Strin ...

  10. Java实例---flappy-bird实例解析

    第一天: 实现背景图片和小鸟的动态飞行效果 package com.ftl.flappybird.day2; import java.awt.Color;//颜色 Color.class import ...