Skip to content

Commit 49ebedd

Browse files
Verz1LkaGallaecio
authored andcommitted
Change the priority of spider-enabling settings (#84)
1 parent c416d65 commit 49ebedd

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

scrapy_crawlera/middleware.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,10 +139,8 @@ def is_enabled(self, spider):
139139
'use CRAWLERA_ENABLED instead.',
140140
category=ScrapyDeprecationWarning, stacklevel=1)
141141
return (
142-
getattr(spider, 'crawlera_enabled', False) or
143-
getattr(spider, 'use_hubproxy', False) or
144-
self.crawler.settings.getbool("CRAWLERA_ENABLED") or
145-
self.crawler.settings.getbool("HUBPROXY_ENABLED")
142+
getattr(spider, 'crawlera_enabled', self.crawler.settings.getbool('CRAWLERA_ENABLED')) or
143+
getattr(spider, 'use_hubproxy', self.crawler.settings.getbool("HUBPROXY_ENABLED"))
146144
)
147145

148146
def get_proxyauth(self, spider):

tests/test_crawlera.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,23 @@ def test_enabled(self):
140140
self.settings['CRAWLERA_ENABLED'] = True
141141
self._assert_enabled(self.spider, self.settings)
142142

143+
def test_spider_crawlera_enabled_priority(self):
144+
self.spider.crawlera_enabled = False
145+
self.settings['CRAWLERA_ENABLED'] = True
146+
self._assert_disabled(self.spider, self.settings)
147+
148+
self.spider.crawlera_enabled = True
149+
self.settings['CRAWLERA_ENABLED'] = False
150+
self._assert_enabled(self.spider, self.settings)
151+
152+
self.spider.crawlera_enabled = True
153+
self.settings['CRAWLERA_ENABLED'] = True
154+
self._assert_enabled(self.spider, self.settings)
155+
156+
self.spider.crawlera_enabled = False
157+
self.settings['CRAWLERA_ENABLED'] = False
158+
self._assert_disabled(self.spider, self.settings)
159+
143160
def test_apikey(self):
144161
self.spider.crawlera_enabled = True
145162
self.settings['CRAWLERA_APIKEY'] = apikey = 'apikey'

0 commit comments

Comments
 (0)