Back to questions
СБЕР
Middle
1
Как параллельно сделать 10 запросов к внешнему API и вернуть результат?
Companies where asked
Answer from AI
sobes.tech AI
Для параллельного выполнения 10 запросов к внешнему API в Python удобно использовать модуль asyncio вместе с aiohttp. Это позволяет запускать запросы асинхронно, не блокируя основной поток.
Пример:
import asyncio
import aiohttp
async def fetch(session, url):
async with session.get(url) as response:
return await response.text()
async def main():
urls = [f'https://api.example.com/data/{i}' for i in range(10)]
async with aiohttp.ClientSession() as session:
tasks = [fetch(session, url) for url in urls]
results = await asyncio.gather(*tasks)
return results
if __name__ == '__main__':
results = asyncio.run(main())
for i, content in enumerate(results):
print(f'Result {i}:', content[:100]) # вывод первых 100 символов ответа
Такой подход позволяет эффективно выполнять множество запросов одновременно, экономя время ожидания сетевых операций.