MCPcopy
hub / github.com/scrapy/scrapy / _check_media_to_download

Method _check_media_to_download

scrapy/pipelines/media.py:206–225  ·  view source on GitHub ↗
(
        self, request: Request, info: SpiderInfo, item: Any
    )

Source from the content-addressed store, hash-verified

204 request.meta["handle_httpstatus_all"] = True
205
206 async def _check_media_to_download(
207 self, request: Request, info: SpiderInfo, item: Any
208 ) -> FileInfo:
209 try:
210 self._modify_media_request(request)
211 assert self.crawler.engine
212 response = await self.crawler.engine.download_async(request)
213 return await ensure_awaitable(
214 self.media_downloaded(response, request, info, item=item)
215 )
216 except Exception:
217 failure = self.media_failed(Failure(), request, info)
218 if isinstance(failure, Failure):
219 warnings.warn(
220 f"{global_object_name(self.media_failed)} returned a Failure instance."
221 f" This is deprecated, please raise an exception instead, e.g. via failure.raiseException().",
222 category=ScrapyDeprecationWarning,
223 stacklevel=2,
224 )
225 failure.raiseException()
226
227 def _cache_result_and_execute_waiters(
228 self, result: FileInfo | Failure, fp: bytes, info: SpiderInfo

Callers 1

_process_requestMethod · 0.95

Calls 6

_modify_media_requestMethod · 0.95
media_downloadedMethod · 0.95
media_failedMethod · 0.95
ensure_awaitableFunction · 0.90
global_object_nameFunction · 0.90
download_asyncMethod · 0.45

Tested by

no test coverage detected