如何加速這個Python Loop

    downloadStart = datetime.now()
while (True):
    requestURL = transactionAPI.format(page = tempPage,limit = 5000)
    response = requests.get(requestURL,headers=headers)
    json_data = json.loads(response.content)
    tempMomosTransactionHistory.extend(json_data["list"])  
    if(datetime.fromtimestamp(json_data["list"][-1]["crtime"]) <  datetime(datetime.today().year,datetime.today().month,datetime.today().day - dateRange)):          
        break                       
    tempPage += 1
downloadEnd = datetime.now()

有什么建議嗎threading或者類似的?

Outputs here

downloadtime 0:00:02.056010

downloadtime 0:00:05.680806

downloadtime 0:00:05.447945

? 最佳回答:

您需要從兩個方面進行改進。

  1. 優化循環內的代碼
  2. 并行化代碼執行

#1通過查看您的代碼,我可以看到一個改進,即創建datetime.today對象,而不是執行3次。檢查其他方法,如transactionAPI進一步優化。

#2:如果您使用多核CPU機器,那么您可以通過每頁跨越thread來利用機器。請參閱上面的修改代碼。

import threading

def processRequest(tempPage):
    requestURL = transactionAPI.format(page = tempPage,limit = 5000)
    response = requests.get(requestURL,headers=headers)
    json_data = json.loads(response.content)
    tempMomosTransactionHistory.extend(json_data["list"])
    
downloadStart = datetime.now()
while (True):
     #create thread per page
     t1 = threading.Thread(target=processRequest, args=(tempPage, ))
     t1.start()
     #Fetch datetime today object once instaed 3 times
     datetimetoday = datetime()
    if(datetime.fromtimestamp(json_data["list"][-1]["crtime"]) <  datetime(datetimetoday.year,datetimetoday.month,datetimetoday.day - dateRange)):          
        break                       
    tempPage += 1
downloadEnd = datetime.now()
主站蜘蛛池模板: 亚洲日韩一区二区三区| 中文字幕一区二区三区四区| 久久精品一区二区三区中文字幕 | 亚洲人成网站18禁止一区| 无码精品人妻一区二区三区漫画 | 一区二区乱子伦在线播放| 影院成人区精品一区二区婷婷丽春院影视| 一区二区三区福利视频| 国产微拍精品一区二区| 亚洲AV无码一区二区三区电影| 中文字幕精品无码一区二区三区 | 亚洲日韩AV一区二区三区中文 | 视频精品一区二区三区| 亚洲变态另类一区二区三区| 亚洲综合一区二区| 97久久精品一区二区三区| 国产一区二区三区高清在线观看 | 中文字幕日韩精品一区二区三区| 日本一区二区不卡在线| 日本一区二区不卡在线| 无码精品视频一区二区三区| 无码人妻一区二区三区在线视频| 久久精品人妻一区二区三区| 成人乱码一区二区三区av| 香蕉免费看一区二区三区| 国产精品亚洲不卡一区二区三区| 亚洲国产精品一区二区九九| 精品视频一区二区| 一区五十路在线中出| 乱码人妻一区二区三区| 亚洲日本乱码一区二区在线二产线 | 久久中文字幕无码一区二区| 中文字幕无线码一区2020青青| 亚洲一本一道一区二区三区 | 3d动漫精品啪啪一区二区中文| 国产精品毛片VA一区二区三区| 无码人妻AⅤ一区二区三区| 国产香蕉一区二区精品视频| 亚洲av综合av一区二区三区| 蜜桃视频一区二区| 国产成人无码一区二区在线观看|