爬虫scrapy框架中settings的配置

关于settings.py在其他py文件中的调用

》scrpay框架中的settings.py中增加某个设置,那么如何在其他py中使用呢?

如下settings.py中,增加设置:
 YOUR_SETTINGS = “xxx” 

有以下两种解决办法

方法一:

》在每个需要调用该设置的py文件(middleware.py、pipelines.py等)中,进行导入。
 from xxx.settings import YOUR_SETTINGS 

方法二:

》在相应的py文件内部直接使用settings。

》注:[ middleware.py 和 pipelines.py 中的 spider,等同于 spider.py 中的 self ]

  • spider.py:
class Spider(scrapy.Spider):
    def parse(self, response):
        # 以下两种写法都可以
        self.settings['YOUR_SETTINGS']
        self.settings.get('YOUR_SETTINGS')
  • middleware.py:
def process_request(self, request, spider):
    # 以下两种写法都可以
    spider.settings['YOUR_SETTINGS']
    spider.settings.get('YOUR_SETTINGS')
  • pipelines.py:
def process_item(self, item, spider):
    # 以下两种写法都可以
    spider.settings['YOUR_SETTINGS']
    spider.settings.get('YOUR_SETTINGS')
上一篇:Scrapy之数据解析与数据持久化存储


下一篇:Scrapy框架补充