mirror of
https://github.com/scrapy/scrapy.git
synced 2025-02-25 18:04:11 +00:00
spidermw: add domain name to warning about missing callbacks in requests
This commit is contained in:
parent
727e67af5e
commit
87fbc9c58c
@ -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
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user