Scrapy Settings.py文件配置

  • Scrapy设置(settings)提供了定制Scrapy组件的方法。可以控制包括核心(core),插件(extension),pipeline及spider组件。

  • 项目名称

BOT_NAME = ''

  • 爬虫储存的文件路径

SPIDER_MODULES = ['downloadmiddlewares.spiders']

  • 创建爬虫文件的模板,创建好的爬虫文件会存放在这个目录下

NEWSPIDER_MODULE = 'downloadmiddlewares.spiders'

  • 设置ua模拟浏览器请求

USER_AGENT = ' '

  • 设置是否需要遵循robot协议:默认为True

ROBOTSTXT_OBEY = False

  • 设置请求的最大并发数据(下载器) 默认是16

CONCURRENT_REQUESTS = 32

  • 设置请求的下载延时,默认为0

DOWNLOAD_DELAY = 3

  • 设置网站的最大并发请求数量,默认是8

CONCURRENT_REQUESTS_PER_DOMAIN = 16

  • 设置某个ip的最大并发请求数量,默认是0,设置某个ip的最大并发请求数量,默认是0,如果非0,CONCURRENT_REQUESTS_PER_DOMAIN不生效, 这时的请求并发数量针对于ip,而不是网站置,DOWNLOAD_DELAY针对ip而不是网站

CONCURRENT_REQUESTS_PER_IP = 16

  • 是否携带cookkie 默认为True

COOKIES_ENABLED = False

  • 跟踪cookies,默认情况为False

COOKIES_DEBUG = False

设置日志信息

LOG_ENABLED
默认: True
是否启用logging。

LOG_ENCODING
默认: 'utf-8'
logging使用的编码。

LOG_LEVEL
默认: 'DEBUG'
log的最低级别。可选的级别有: CRITICAL、 ERROR、WARNING、INFO、DEBUG 。

  • CRITICAL - 严重错误(critical)
  • ERROR - 一般错误(regular errors)
  • WARNING - 警告信息(warning messages)
  • INFO - 一般信息(informational messages)
  • DEBUG - 调试信息(debugging messages)

LOG_FILE
默认: None
logging输出的文件名。如果为None,则使用标准错误输出(standard error)
LOG_FILE = "TencentSpider.log"
LOG_LEVEL = "INFO"

  • 是一个终端的扩展插件

TELNETCONSOLE_ENABLED = False

  • 设置默认的请求头

DEFAULT_REQUEST_HEADERS = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.26 Safari/537.36 Core/1.63.6788.400 QQBrowser/10.3.2864.400'
}

  • 设置和激活爬虫中间件

SPIDER_MIDDLEWARES = { 'downloadmiddlewares.middlewares.DownloadmiddlewaresSpiderMiddleware': 543,
}

  • 设置和激活下载中间件,后面的数字表示优先级

DOWNLOADER_MIDDLEWARES = {
'downloadmiddlewares.middlewares.UserAgentDownloadMiddleware':543
}

  • 设置扩展

EXTENSIONS = {
'scrapy.extensions.telnet.TelnetConsole': None,
}

  • 设置和激活管道文件,后面数字表示优先级

ITEM_PIPELINES = {
'downloadmiddlewares.pipelines.DownloadmiddlewaresPipeline': 300,
}

自动限速扩展(上一个请求和下一个请求之间的时间是不固定的

  • 默认情况下,自动限速扩展是关闭的:AUTOTHROTTLE_ENABLED = False

AUTOTHROTTLE_ENABLED = True

  • 初始的下载延时,默认5秒

AUTOTHROTTLE_START_DELAY = 5

  • 最大下载延时

AUTOTHROTTLE_MAX_DELAY = 60

  • 针对于网站的最大并行请求数量

AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0

  • 调试模式:默认为False,未开启

AUTOTHROTTLE_DEBUG = False

  • 设置数据缓存,默认未开启

HTTPCACHE_ENABLED = True

  • 设置缓存超时时间,默认为0,表示永久有效

HTTPCACHE_EXPIRATION_SECS = 0

  • 设置缓存数据的存储路径

HTTPCACHE_DIR = 'httpcache'

  • 忽略某些状态码的请求结果

HTTPCACHE_IGNORE_HTTP_CODES = []

  • 开启缓存的扩展插件

HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'

你可能感兴趣的:(Scrapy Settings.py文件配置)