Support crawlers as first positional arg in CrawlerRunner.crawl()

This commit is contained in:
Julia Medina 2015-04-10 11:52:57 -03:00
parent f8ca5d1092
commit bc70584344
1 changed files with 6 additions and 3 deletions

View File

@ -82,9 +82,12 @@ class CrawlerRunner(object):
self.crawlers = set()
self._active = set()
def crawl(self, spidercls, *args, **kwargs):
crawler = self._create_crawler(spidercls)
self._setup_crawler_logging(crawler)
def crawl(self, crawler_or_spidercls, *args, **kwargs):
crawler = crawler_or_spidercls
if not isinstance(crawler_or_spidercls, Crawler):
crawler = self._create_crawler(crawler_or_spidercls)
self._setup_crawler_logging(crawler)
self.crawlers.add(crawler)
d = crawler.crawl(*args, **kwargs)
self._active.add(d)