下載流式檔案,requests庫中請求的stream設為True就可以啦
先找一個影片地址試驗一下:
遭遇當頭一棒:
AttributeError: __exit__
這檔案也會騙人的麼!
看樣子是沒有實現背景關係需要的__exit__方法。既然只是為了保證要讓r最後close以釋放連線池,那就使用contextlib的closing特性好了:
程式正常運行了,不過我盯著這檔案,怎麼大小不見變啊,到底是完成了多少了呢?還是要讓下好的內容及時存進硬碟,還能省點記憶體是不是:
檔案以肉眼可見的速度在增大,真心疼我的硬碟,還是最後一次寫入硬碟吧,程式中記個數就好了:
結果就很直觀了:
心懷遠大理想的我怎麼會只滿足於這一個呢,寫個類一起使用吧:
執行:
看上去舒服多了。
下麵要做的就是多執行緒同時下載了,主執行緒生產url放入佇列,下載執行緒獲取url:
加了重覆下載的判斷,至於怎麼源源不斷的生產url,諸位摸索吧,保重身體!
文章
申明
作者:再見紫羅蘭
源自:https://www.cnblogs.com/linxiyue/p/8244724.html
宣告:文章著作權歸作者所有,如有侵權,請聯絡小編刪除