В общем, scrapy не прекращает ползать, если обратные вызовы вызывают исключение. e.g.:
def start_requests(self):
for i in range(10):
yield Requst(
f'http://example.org/page/{i}',
callback=self.parse,
errback=self.errback,
)
def parse(self, response):
# first page
if 'page/1' in response.request.url:
raise ValueError()
yield {'url': response.url}
def errback(self, failure):
print(f"oh no, failed to parse {failure.request}")
В этом примере будет сделано 10 запросов и 9 элементов будут очищены, но 1 потерпит неудачу и получит errback
В вашем случае вам нечего бояться - любой запрос, который не вызывает исключение, будет очищен, как и должен, для тех, которые это сделают, вы просто увидите трассировку исключения в вашем терминале / журналах.