diff --git a/scrapy/spider/middleware.py b/scrapy/spider/middleware.py index 913c9a065..85af03c2a 100644 --- a/scrapy/spider/middleware.py +++ b/scrapy/spider/middleware.py @@ -81,7 +81,7 @@ class SpiderMiddlewareManager(object): 'Middleware %s must returns an iterable object, got %s ' % \ (fname(method), type(result)) - return self._validate_output(request, result) + return self._validate_output(request, result, spider) dfd = mustbe_deferred(process_spider_input, response) dfd.addErrback(process_spider_exception) @@ -93,14 +93,14 @@ class SpiderMiddlewareManager(object): request.deferred.addCallback(arg_to_iter) return request.deferred - def _validate_output(self, request, result): + def _validate_output(self, request, result, spider): """Every request returned by spiders must be instanciate with a callback""" for r in result: if isinstance(r, Request) and not r.deferred.callbacks: log.msg('Ignoring %s returned from spider while processing %s: ' \ 'Request has no callback, try adding callback=self.parse ' \ 'argument when instanciating Request objects inside your spiders' \ - % (r, request), level=log.WARNING) + % (r, request), level=log.WARNING, domain=spider.domain_name) continue yield r