aiohttp.ServerTimeoutError
и asyncio.TimeoutError
- это разные типы времени ожидания.
asyncio.TimeoutError
- это общее время ожидания, которое может произойти по разным причинам, начиная с несуществующего домена или слишком большого количества данных для чтения.
aiohttp.ServerTimeoutError
как поиск в aiohttp исходный код показывает, что используется в только в одном месте - когда соединение с сервером установлено, но некоторое чтение из сокета занимает слишком много времени. Вы также можете проверить aiohttp tests , чтобы увидеть реальные ситуации, в которых вы получаете ServerTimeoutError
.
Работа сетевого запроса сложна и может работать неправильно во многих разных местах. Не пытайтесь понять их всех (если это не ваша цель). Пока вы просто хотите сделать запрос, поймайте TimeoutError
(поскольку ServerTimeoutError
является подклассом ), чтобы увидеть, если вы, возможно, должны изменить timeout
kwarg.