MCPcopy
hub / github.com/scrapy/scrapy / close_spider

Method close_spider

scrapy/extensions/feedexport.py:519–535  ·  view source on GitHub ↗
(self, spider: Spider)

Source from the content-addressed store, hash-verified

517 )
518
519 async def close_spider(self, spider: Spider) -> None:
520 self._pending_close_coros.extend(
521 self._close_slot(slot, spider) for slot in self.slots
522 )
523
524 if self._pending_close_coros:
525 if is_asyncio_available():
526 await asyncio.wait(
527 [asyncio.create_task(coro) for coro in self._pending_close_coros]
528 )
529 else:
530 await DeferredList(
531 deferred_from_coro(coro) for coro in self._pending_close_coros
532 )
533
534 # Send FEED_EXPORTER_CLOSED signal
535 await self.crawler.signals.send_catch_log_async(signals.feed_exporter_closed)
536
537 @staticmethod
538 def _get_file(slot_: FeedSlot) -> IO[bytes]:

Callers

nothing calls this directly

Calls 6

_close_slotMethod · 0.95
is_asyncio_availableFunction · 0.90
deferred_from_coroFunction · 0.90
waitMethod · 0.80
send_catch_log_asyncMethod · 0.80
extendMethod · 0.45

Tested by

no test coverage detected