|
|
# Scrapy settings for Test 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 = 'Test'
|
|
|
|
|
|
SPIDER_MODULES = ['Test.spiders']
|
|
|
NEWSPIDER_MODULE = 'Test.spiders'
|
|
|
|
|
|
|
|
|
KEYWORDS = ['python']
|
|
|
CITYCODE = ['c101020100']
|
|
|
MAX_PAGE = 10
|
|
|
#使用了scrapy_redis的去重组件,在redis数据库里做去重,确保所有爬虫共享相同的去重指纹
|
|
|
DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter"
|
|
|
#使用了scrapy_redis的调度器,在redis里分配请求,确保request存储到redis中
|
|
|
SCHEDULER = "scrapy_redis.scheduler.Scheduler"
|
|
|
# 在redis中保持scrapy-redis用到的队列,不会清理redis中的队列,从而可以实现暂停和恢复的功能
|
|
|
SCHEDULER_PERSIST = True
|
|
|
#指定redis数据库的连接参数
|
|
|
REDIS_HOST = "192.168.163.128"
|
|
|
REDIS_PORT = 6379
|
|
|
|
|
|
HTTPERROR_ALLOWED_CODES = [301]
|
|
|
ROBOTSTXT_OBEY = False
|
|
|
MYSQL_HOST = "127.0.0.1"
|
|
|
MYSQL_PORT = 3306
|
|
|
MYSQL_DBNAME = "spidetssdb"
|
|
|
MYSQL_USER = "root"
|
|
|
MYSQL_PASSWORD = "Fengqici010515"
|
|
|
CHARSET = "utf8"
|
|
|
|
|
|
'''
|
|
|
通过配置RedisPipeline将item写入key为
|
|
|
spider.name : items 的redis的list中,供后面的分布式处理item,这个已经由scrapy-redis 实现,
|
|
|
不需要我们写代码,直接使用即可
|
|
|
'''
|
|
|
ITEM_PIPELINES = {
|
|
|
# 'Test.spiders.pipelines.Test.spidersPipeline': 300,
|
|
|
'scrapy_redis.pipelines.RedisPipeline': 400,
|
|
|
# 'Test.pipelines.MysqlPipelineTwo': 302,
|
|
|
# 'Test.pipelines.TestPipeline': 300,
|
|
|
|
|
|
}
|
|
|
#
|
|
|
#
|
|
|
|
|
|
# Crawl responsibly by identifying yourself (and your website) on the user-agent
|
|
|
#USER_AGENT = 'Test (+http://www.yourdomain.com)'
|
|
|
|
|
|
# Obey robots.txt rules
|
|
|
ROBOTSTXT_OBEY = False
|
|
|
|
|
|
# Configure maximum concurrent requests performed by Scrapy (default: 16)
|
|
|
#CONCURRENT_REQUESTS = 32
|
|
|
|
|
|
# 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 = 1
|
|
|
# The download delay setting will honor only one of:
|
|
|
#CONCURRENT_REQUESTS_PER_DOMAIN = 16
|
|
|
#CONCURRENT_REQUESTS_PER_IP = 16
|
|
|
|
|
|
# Disable cookies (enabled by default)
|
|
|
#COOKIES_ENABLED = False
|
|
|
|
|
|
# Disable Telnet Console (enabled by default)
|
|
|
#TELNETCONSOLE_ENABLED = False
|
|
|
|
|
|
# Override the default request headers:
|
|
|
#DEFAULT_REQUEST_HEADERS = {
|
|
|
# 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
|
|
|
# 'Accept-Language': 'en',
|
|
|
#}
|
|
|
|
|
|
# Enable or disable spider middlewares
|
|
|
# See https://docs.scrapy.org/en/latest/topics/spider-middleware.html
|
|
|
#SPIDER_MIDDLEWARES = {
|
|
|
# 'Test.middlewares.TestSpiderMiddleware': 543,
|
|
|
#}
|
|
|
|
|
|
# Enable or disable downloader middlewares
|
|
|
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
|
|
|
DOWNLOADER_MIDDLEWARES = {
|
|
|
'Test.middlewares.TestDownloaderMiddleware': 543,
|
|
|
}
|
|
|
|
|
|
# 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 = {
|
|
|
# 'Test.pipelines.TestPipeline': 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
|
|
|
#AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0
|
|
|
# Enable showing throttling stats for every response received:
|
|
|
#AUTOTHROTTLE_DEBUG = False
|
|
|
|
|
|
# Enable and configure HTTP caching (disabled by default)
|
|
|
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html#httpcache-middleware-settings
|
|
|
#HTTPCACHE_ENABLED = True
|
|
|
#HTTPCACHE_EXPIRATION_SECS = 0
|
|
|
#HTTPCACHE_DIR = 'httpcache'
|
|
|
#HTTPCACHE_IGNORE_HTTP_CODES = []
|
|
|
#HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'
|