歡迎光臨
每天分享高質量文章

Python爬取影片(其實是一篇福利)

下載流式檔案,requests庫中請求的stream設為True就可以啦

先找一個影片地址試驗一下:

遭遇當頭一棒:

AttributeError: __exit__

這檔案也會騙人的麼!

看樣子是沒有實現背景關係需要的__exit__方法。既然只是為了保證要讓r最後close以釋放連線池,那就使用contextlib的closing特性好了:

程式正常運行了,不過我盯著這檔案,怎麼大小不見變啊,到底是完成了多少了呢?還是要讓下好的內容及時存進硬碟,還能省點記憶體是不是:

檔案以肉眼可見的速度在增大,真心疼我的硬碟,還是最後一次寫入硬碟吧,程式中記個數就好了:

結果就很直觀了:

心懷遠大理想的我怎麼會只滿足於這一個呢,寫個類一起使用吧:

執行:

看上去舒服多了。

下麵要做的就是多執行緒同時下載了,主執行緒生產url放入佇列,下載執行緒獲取url:

加了重覆下載的判斷,至於怎麼源源不斷的生產url,諸位摸索吧,保重身體!

文章

申明

作者:再見紫羅蘭

源自:https://www.cnblogs.com/linxiyue/p/8244724.html

宣告:文章著作權歸作者所有,如有侵權,請聯絡小編刪除

贊(0)

分享創造快樂