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中调用来做到判断数据库是不是连接出了问题等等
Comments NOTHING