溫馨提示×

python并發(fā)請求接口怎么設(shè)置

小億
110
2023-12-16 00:53:19
欄目: 編程語言

可以使用Python的concurrent.futures模塊來實現(xiàn)并發(fā)請求接口。以下是一個簡單的示例:

import requests
import concurrent.futures

# 定義請求的接口函數(shù)
def request_api(url):
    response = requests.get(url)
    return response.json()

# 定義接口請求的URL列表
urls = ["http://api.example.com/endpoint1", "http://api.example.com/endpoint2", "http://api.example.com/endpoint3"]

# 創(chuàng)建線程池
with concurrent.futures.ThreadPoolExecutor() as executor:
    # 提交接口請求任務(wù)給線程池,并獲取結(jié)果
    results = executor.map(request_api, urls)

    # 遍歷結(jié)果
    for result in results:
        # 處理接口返回的數(shù)據(jù)
        print(result)

在上述示例中,我們首先定義了一個request_api函數(shù),用于發(fā)送請求并返回接口的JSON數(shù)據(jù)。然后,我們創(chuàng)建了一個URL列表,其中包含了要請求的接口URL。接下來,使用ThreadPoolExecutor創(chuàng)建了一個線程池,并使用executor.map()方法將接口請求任務(wù)提交給線程池。最后,我們遍歷結(jié)果并處理返回的數(shù)據(jù)。

你也可以使用concurrent.futures.ProcessPoolExecutor來創(chuàng)建進(jìn)程池,從而實現(xiàn)并發(fā)請求接口。只需將上述示例中的ThreadPoolExecutor替換為ProcessPoolExecutor即可。

0