Все запросы работают нормально, но после 90% задач ответы зависают и время ожидания.
В следующем коде, если вы измените n_requests
на 1000 или 10, проблема все еще существует икажется, что он всегда равен 10%, который не получит ответа.
Кажется, что он работает только с 2 запросами (n_requests = 2
):
import asyncio
import aiohttp
n_requests = 100
async def make_request(session, req_n):
url = f"https://www.xup.to/exec/ximg.php?fid={req_n}"
print(req_n)
async with session.get(url) as resp:
print(req_n, "finish")
async def main():
async with aiohttp.ClientSession() as session:
counternr = 0
while counternr < 9999:
await asyncio.gather(
*[make_request(session, i) for i in range(counternr, counternr + n_requests)]
)
counternr= n_requests + counternr
loop = asyncio.get_event_loop()
loop.run_until_complete(main())