我看到this question,我看到this question,但對信號the official Scrapy page on pipelines提什麼。Scrapy管道open_sider不會被調用
這是我到目前爲止的代碼:
import sqlite3
import datetime
from scrapy import signals
from scrapy.xlib.pydispatch import dispatcher
from scrapy import log
class Sqlite3StorePipeline(object):
def __init__(self):
print 'wtf'
dispatcher.connect(self.open_spider, signals.spider_opened)
dispatcher.connect(self.close_spider, signals.spider_closed)
def open_spider(self, spider):
print 'wtf2'
...
當我使用命令scrapy crawl <spider name>
運行我的蜘蛛,我只看到「跆拳道」,而不是「wtf2」被輸出。
我怎樣才能讓我的open_spider
函數被調用?
咦,有趣。我也嘗試了spider.log。那裏沒有運氣。我很確定函數沒有被調用,因爲如果是這樣的話,我的數據庫將以某種方式被初始化,而不是。 – wrongusername