簡體   English   中英

使用 python 為同一 url 發送多個 get 請求

[英]Send multiple get requests for the same url using python

我必須發送幾千個獲取相同 url 的請求。 當我使用 for 循環執行此操作時會很長,所以我尋找更好/更快/ ̶s̶t̶r̶o̶n̶g̶e̶r̶- 的解決方案。 你有什么想法?

url = 'https://site.ru:port/api/v2/getRequest'

for index, row in tqdm.tqdm(data.iterrows(), total=data.shape[0]):

        params = {

            'param1_key' : row['param1_value'],
            'param2_key' : row['param2_value'}

        response = requests.get(api_endpoint, params, headers={'apikey': api_key}, timeout=30)

在 for 循環中執行此操作時,每次都必須等待響應。 所以為了讓它更好/更快/更強......與requests-futuresgrequests異步!

(另請參閱帶有 Python 請求的異步請求- 雖然它已經過時了,但無論如何都指向 grequests)

沒有更多信息很難說。 iterrows if 知道不快,但我敢打賭,最耗時的部分是等待服務器的響應。

在這種情況下, multiprocessing.dummy.Pool可以成為啟動多個並發請求的便捷工具,而無需等待每個請求都終止后再開始下一個請求。 但請注意,向單個服務器發送過多請求可能被視為攻擊......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM