在Python中,你可以使用requests
庫來實現并發請求。requests
庫提供了簡單易用的API,讓你可以輕松地發送HTTP請求。為了實現并發請求,你可以使用concurrent.futures
模塊中的ThreadPoolExecutor
或ProcessPoolExecutor
。
以下是使用ThreadPoolExecutor
實現并發請求的示例:
import requests
from concurrent.futures import ThreadPoolExecutor
url = "https://api.example.com/data"
def fetch(url):
response = requests.get(url)
return response.json()
urls = [url] * 10 # 假設有10個相同的URL需要請求
# 使用線程池實現并發請求
with ThreadPoolExecutor(max_workers=5) as executor:
results = list(executor.map(fetch, urls))
print(results)
在這個示例中,我們首先導入requests
庫和concurrent.futures
模塊中的ThreadPoolExecutor
。然后,我們定義了一個名為fetch
的函數,該函數接受一個URL作為參數,并使用requests.get()
發送HTTP GET請求。接著,我們創建了一個包含10個相同URL的列表。最后,我們使用ThreadPoolExecutor
創建一個線程池,并使用executor.map()
方法將fetch
函數應用到URL列表中的每個元素上。這將實現并發請求,并在完成后返回結果列表。
注意,max_workers
參數表示線程池中的最大工作線程數。你可以根據你的需求和系統資源來調整這個值。