2016-11-27 47 views
0

我需要讀取一個配置文件,從中加載蜘蛛所需的非scrapy相關配置屬性,並從我擁有的所有蜘蛛中使用該配置。如何分享蜘蛛間的共同參考?

最簡單的解決方案是使用settings.py文件,但我認爲這不是這個文件的目的,我想從我的配置文件中分離出scrapy模塊配置。

我有一個類已經讀取並從配置文件加載我的配置,但我不想從每個蜘蛛中導入這個模塊,因爲我想配置只能加載一次,並在蜘蛛之間共享。

什麼是最乾淨的方法來實現這個?我應該以某種方式重寫SpiderLoader類嗎?

回答

2

在Scrapy最常見的方式來增加非生產設置,是添加local_settings.py文件,然後添加到您的settings.py文件:

try: 
    from local_settings import * 
except ImportError: 
    pass 
+0

我想,會做。但是,我還需要在運行所有蜘蛛之前對數據庫進行查詢,因爲它們使用該查詢中的信息進行操作。這個怎麼樣? – Jorge

+1

'local_settings.py'仍然是一個python文件,所以東西可以在裏面執行 – eLRuLL