python - 如何優(yōu)雅的獲取下載速度?
問(wèn)題描述
以前一直用 urlopen然后 read, 開(kāi)一個(gè)線程,每秒去檢測(cè)一次收到的buffer大小, 有沒(méi)有優(yōu)雅一點(diǎn)的方式獲取速度?
問(wèn)題解答
回答1:給 urllib.urlretrieve(url[, filename[, reporthook[, data]]]), 寫(xiě)回調(diào)函數(shù)
import timeimport urllibstart_time = time.time()def Schedule(a,b,c): ’’’ a:已經(jīng)下載的數(shù)據(jù)塊 b:數(shù)據(jù)塊的大小 c:遠(yuǎn)程文件的大小 ’’’ speed = (a * b) / (time.time() - start_time) print speed urllib.urlretrieve(url,local,Schedule)回答2:
使用progreebar
回答3:streaming.
回答4:有沒(méi)有試過(guò)檢測(cè)所下載文件的增量.定時(shí)檢測(cè)下載文件在本地的大小, 取增量.
回答5:如果是python的話,一般的庫(kù)都會(huì)提供回調(diào)函數(shù)來(lái)做這方面的工作。
相關(guān)文章:
1. java固定鍵值轉(zhuǎn)換,使用枚舉實(shí)現(xiàn)字典?2. javascript - 移動(dòng)端開(kāi)發(fā) H5 頁(yè)面在 iOS手機(jī)上無(wú)法實(shí)現(xiàn) 長(zhǎng)按復(fù)制文本 求解決3. 如何解決tp6在zend中無(wú)代碼提示4. java - HTTPS雙向認(rèn)證基礎(chǔ)上有無(wú)必要再進(jìn)行加簽驗(yàn)簽?5. vim - win10無(wú)法打開(kāi)markdown編輯器6. html - 如何使用用戶輸入的數(shù)據(jù)去運(yùn)行一個(gè)數(shù)學(xué)公式,最后怎么返回。7. python - flask學(xué)習(xí),user_syy添加報(bào)role is invalid keyword for User.8. 這是什么情況???9. css3 - less或者scss 顏色計(jì)算的知識(shí)應(yīng)該怎么學(xué)?或者在哪里學(xué)?10. javascript - 有沒(méi)有類似高鐵管家的時(shí)間選擇插件
