This is Spider
class TicketsSpider(scrapy.Spider):
def __set_last_start_date(self, dateString):
#code here
This is Pipeline
class TicketsPipeline(object):
def spider_closed(self, spider):
spider.__set_last_start_date(spider.lastAdScrapedDate)
@classmethod
def from_crawler(cls, crawler):
pipeline = cls()
crawler.signals.connect(pipeline.spider_closed, signals.spider_closed)
return pipeline
I want to call __set_last_start_date()
function from spider_closed()
method. But I am getting this error
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/twisted/internet/defer.py", line 149, in maybeDeferred
result = f(*args, **kw)
File "build/bdist.linux-x86_64/egg/pydispatch/robustapply.py", line 55, in robustApply
File "tickets/pipelines.py", line 236, in spider_closed
spider.__set_last_start_date(spider.lastAdScrapedDate)
AttributeError: 'TicketsSpider' object has no attribute '_TicketsPipeline__set_last_start_date'
2016-12-13 02:49:53 [scrapy] INFO: Dumping Scrapy stats:
I can assure you that I can get spider.lastAdScrapedDate
but I am unable to call spider.__set_last_start_date