From 9f60c276127c94b2e136cd83d171aa98c229932c Mon Sep 17 00:00:00 2001 From: Pablo Hoffman Date: Fri, 5 Aug 2011 20:41:59 -0300 Subject: [PATCH] added setting to support disabling DNS cache: DNSCACHE_ENABLED --- docs/topics/settings.rst | 9 +++++++++ scrapy/crawler.py | 3 ++- scrapy/settings/default_settings.py | 2 ++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/topics/settings.rst b/docs/topics/settings.rst index 4743d9b40..24da5c2e6 100644 --- a/docs/topics/settings.rst +++ b/docs/topics/settings.rst @@ -366,6 +366,15 @@ Default: ``False`` Whether to collect verbose depth stats. If this is enabled, the number of requests for each depth is collected in the stats. +.. setting:: DNSCACHE_ENABLED + +DNSCACHE_ENABLED +---------------- + +Default: ``True`` + +Whether to enable DNS in-memory cache. + .. setting:: DOWNLOADER_DEBUG DOWNLOADER_DEBUG diff --git a/scrapy/crawler.py b/scrapy/crawler.py index ceeae57d6..b5ac99620 100644 --- a/scrapy/crawler.py +++ b/scrapy/crawler.py @@ -70,7 +70,8 @@ class CrawlerProcess(Crawler): def start(self): super(CrawlerProcess, self).start() - reactor.installResolver(CachingThreadedResolver(reactor)) + if self.settings.getbool('DNSCACHE_ENABLED'): + reactor.installResolver(CachingThreadedResolver(reactor)) reactor.addSystemEventTrigger('before', 'shutdown', self.stop) reactor.run(installSignalHandlers=False) # blocking call diff --git a/scrapy/settings/default_settings.py b/scrapy/settings/default_settings.py index c2438e60b..9f38c2010 100644 --- a/scrapy/settings/default_settings.py +++ b/scrapy/settings/default_settings.py @@ -49,6 +49,8 @@ DEPTH_LIMIT = 0 DEPTH_STATS = True DEPTH_PRIORITY = 1 +DNSCACHE_ENABLED = True + DOWNLOAD_DELAY = 0 DOWNLOAD_HANDLERS = {}