Я пытаюсь использовать aiohttp для отправки запросов один за другим, как это
import aiohttp
import asyncio
from datetime import datetime
async def main():
request_url = "https://..."
async with aiohttp.ClientSession() as session:
while True:
print(datetime.now())
async with session.get(request_url) as response:
json_data = await response.json()
print(json_data)
await asyncio.sleep(0.2)
if __name__ == "__main__":
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
Так что я бы ожидал, что каждая печать даты и времени будет с интервалом 0,2 с. Однако, кажется, что они находятся на расстоянии около 0,35 с, так как я думаю, что для получения данных из ответа требуется 0,15 с. Почему это происходит? Я хочу, чтобы он был асинхронным, поэтому он должен просто go перейти к следующему?
Как я могу это исправить?
Спасибо.