Теория
Почему aiohttp может выполнять HTTP-запросы неблокирующе, а requests — нет?
aiohttp интегрирован с event loop и отдаёт управление на ожидании сетевого I/O. requests предоставляет синхронный интерфейс и удерживает вызывающий поток до завершения операции.
Читать ответ