scrapy settings与管道的深入

酥酥 发布于 2021-09-18 103 次阅读


 

settings.py与管道的深入

为什么需要配置文件:

  • 配置文件存放一些公共变量(数据库地址,账号密码等)

  • 方便自己与别人修改

  • 一般使用全大写字母命名变量名

配置项简介

  • BOT_NAME:项目名

  • SPIDER_MODULES:spider文件夹

  • NEWSPIDER_MODULES:新创建的spider放哪里

  • USER_AGENT:使用的浏览器代理

  • ROBOTSTEXT_OBEY:是否遵循ROBOTS协议

  • CONCURRENT_REQUEST:最大并发请求,越大越可能被识别为爬虫,越小越安全

  • DOWNLOAD_DELAY:下载延时,先睡若干秒再下载

  • COOKIES_ENABLED:是否开启,最好是开启

  • TELNETCONSOLE_ENALBED:Scrapy 提供了内置的 Telnet 终端,以供检查,控制 Scrapy 运行的进程

  • DEFAULT_REQUEST_HEADERS:默认请求头

  • 一些中间件、PIPELINE

  • AUTOTHROTTLE:自动限速相关

  • HTTP缓存系列

使用settings.py中的变量

				
					from xxxx.settings import 变量名 或者 self.settings.get()/self.setting['']
				
			

PIPELINE

PIPILINE中支持open_spider(self,spider) ,close_spider(self,spider)

				
					很多数据库操作开关操作可以放到上面两个函数中去执行 最后使用spider.name 通过在spider中调用来做到判断数据库是不是连接出了问题等等