我已经建立了一个Scrapy扩展。我从我的Scrapy项目的settings.py文件中调用我的扩展。现在我想将参数或值传递给此SpiderDetails类。我怎样才能做到这一点?我的settings.py文件代码如下:EXTENSIONS = { 'tellercoins.extensions.SpiderDetails':1000, }
答案 0 :(得分:0)
class MySpider(BaseSpider):
name = 'myspider'
def __init__(self, var, **kw):
super(MySpider, self).__init__()
self.var = var
class SpiderDetails(object):
def __init__(self):
pass
@classmethod
def from_crawler(cls, crawler):
o = cls()
crawler.signals.connect(o.spider_opened, signal=signals.spider_opened)
return o
def spider_opened(self, spider):
# access your variable here
print spider.var
$ scrapy crawl myspider -a var=value