settins中的一些配置
# 你的爬虫项目的名字
BOT_NAME
# 搜索你编写的spider的目录,为一个列表
SPIDER_MODULES
# 新建的spider的目录
NEWSPIDER_MODULE
# 是否遵循网站的robots.txt来爬取数据
ROBOTSETXT_OBEY
# 设置请求的标识
USER_AGENT
# 是否启用Cookie
COOKIES_ENABLED
# 是否启用Telnet控制台
TELNETCONSOLE_ENABLED
# 设置请求头
DEFAULT_REQUEST_HEADERS = {}
# 爬虫终止的条件:ITEM的个数,页面的数量,超时的次数,错误的次数
CLOSESPIDER_ITEMCOUNT = 10
CLOSESPIDER_PAGECOUNT = 10
CLOSESPIDER_TIMEOUT = 10
CLOSESPIDER_ERRORCOUNT = 10
# 设定爬取的最大深度
DEPTH_LIMIT = 3
# 设置爬虫的中间件,为一个字典,数值越低,优先级越高
SPIDER_MIDDLEWARES = {
'properties.middlewares.PropertiesSpiderMiddleware': 543,
}
# 设置下载器中间件,优先级同上
DOWNLOADER_MIDDLEWARES = {
'properties.middlewares.PropertiesDownloaderMiddleware': 543,
}
# 设置扩展
EXTENSIONS = {
'scrapy.extensions.telnet.TelnetConsole': None,
}
# 设置管道,优先级与中间件的设置相同
ITEM_PIPELINES = {
'properties.pipelines.PropertiesPipeline': 300,
'properties.pipelines.MongoPipeline': 299,
'scrapy.pipelines.images.ImagesPipeline': 1,
'scrapy.pipelines.files.FilesPipeline': 2,
}
# 启动文件媒体下载管道时,文件与媒体的下载目录
FILE_STORE = 'files'
IMAGES_STORE = 'images'
# 设置过期天数,天为单位
FILE_EXPIRES = 90
IMAGES_EXPIRES = 30
# 设置图片生成的缩略图
IMAGES_THUMBS = {
'small': (50, 50),
'big': (270, 270),
}
# 图片过滤器
IMAGES_MIN_HEIGHT = 110
IMAGES_MIN_WIDTH = 110
# scrapy的自动限速扩展
AUTOTHROTTLE_ENABLED = True
AUTOTHROTTLE_START_DELAY = 5
AUTOTHROTTLE_MAX_DELAY = 60
AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0
AUTOTHROTTLE_DEBUG = False
# 配置scrapy执行的最大并发请求,默认为16
CONCURRENT_REQUESTS = 16
# 设置超时时间
DOWNLOAD_TIMEOUT = 10
# 为同一网站设置请求延迟
DOWNLOAD_DELAY = 1.5
# 对单个网站进行并发请求的最大值,只会使用下面的其中一个,IP为非0时,DOMAIN不起作用
CONCURRENT_REQUESTS_PER_DOMAIN = 16
CONCURRENT_REQUESTS_PER_IP = 16