Назад к вопросам
Junior — Middle
58
Можно ли одновременно отправить 10 запросов, каждый из которых выполняется 20 секунд?
Ответ от нейросети
sobes.tech AI
Да, в Python можно одновременно отправить 10 запросов, каждый из которых выполняется 20 секунд, используя параллельное или асинхронное выполнение. Например, с помощью модуля concurrent.futures и ThreadPoolExecutor можно запустить несколько запросов в отдельных потоках:
import concurrent.futures
import time
import requests
def send_request(url):
response = requests.get(url)
return response.status_code
urls = ['http://example.com'] * 10
with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:
futures = [executor.submit(send_request, url) for url in urls]
for future in concurrent.futures.as_completed(futures):
print(future.result())
Такой подход позволит отправить все 10 запросов почти одновременно, и общее время будет около 20 секунд, а не 200. Аналогично можно использовать asyncio с асинхронными библиотеками для HTTP.