From 85b52b06542ee5905c174763de874bc9c376dfa5 Mon Sep 17 00:00:00 2001 From: Rolando Espinoza Date: Wed, 16 Jul 2014 10:34:42 -0400 Subject: [PATCH] For consistency, use `job_dir` helper in `SpiderState` extension. The `SpiderState` extension is the only place not using the `job_dir` helper. This might cause an error in case JOBDIR is a nested path which does not exists, although this is least likely by default given the job dir being set up earlier. --- scrapy/contrib/spiderstate.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scrapy/contrib/spiderstate.py b/scrapy/contrib/spiderstate.py index 3006a071a..3799c7c66 100644 --- a/scrapy/contrib/spiderstate.py +++ b/scrapy/contrib/spiderstate.py @@ -2,6 +2,7 @@ import os from six.moves import cPickle as pickle from scrapy import signals +from scrapy.utils.job import job_dir class SpiderState(object): """Store and load spider state during a scraping job""" @@ -11,7 +12,7 @@ class SpiderState(object): @classmethod def from_crawler(cls, crawler): - obj = cls(crawler.settings.get('JOBDIR')) + obj = cls(job_dir(crawler.settings)) crawler.signals.connect(obj.spider_closed, signal=signals.spider_closed) crawler.signals.connect(obj.spider_opened, signal=signals.spider_opened) return obj