2分钟下载付费音乐
loyals發行6周年,心血來潮,想在某云客戶端下載用作鈴聲。點擊下載,并不是選擇音樂品質,而是彈出個這。
尼瑪下個3分鐘的歌還要收費啊。6年前也下過,明明不要錢的啊我湊=。=。。當然了付費時不可能付費的,就算打折也不會付費的。所以自己寫個爬蟲抓一下好了。
相較于前一陣寫的大規模持續抓取的爬蟲需要框架還要考慮翻頁加載ajax掛代理等等等等。這種小爬蟲的方式實現真的很簡單。著實出于實用,大家能用上,所以這次把實現過程簡單描述一下。
1.打開網易云,在搜索框輸入歌名
2.按f12進入右鍵檢查進入開發者工具頁面,并切換到network選項卡,我用的是chrome瀏覽器,其他瀏覽器選項卡顯示的可能是網絡,功能相同,并點擊clear清除多余日志
3.按下播放按鈕的一瞬間,點擊stop停止繼續加載請求(一定要點stop,不點會持續加載亂七八糟的get與post請求,眼力勁好的可以不點)
4.在左下角找到一個url?csrf_token文件,點擊preview查看,這是一條json數據。點擊data,點擊0,翻到最下開頭為url的數據,并保存冒號后的字段,不包括開頭與結尾的冒號
5.然后拷貝以下代碼到到文本文件中,保存并修改文件名為text.py
6.打開命令行,在指定的路徑下運行該命令python test.py,并按下回車,彈出提示后貼上剛才從網頁上復制的數據在按下虧車即可
7.此時對應的路徑下會生成一個文本文件,將后綴名改為mp4并保存,然后就能聽了
雖然獲取到了想要的音頻,但其實還有很多功能可以去實現,比如直接輸入歌名就能發起一系列請求,完成下載,但由于時間關系沒工夫研究倒數第二個url的get請求尾部的token信息去哪里尋找了。
這個思路同樣的可以抓取一些不能下載的電影漫畫等,只需在代碼部分的稍作修改。
晚安.
總結
- 上一篇: 当你使用微信和QQ的时候,请不要忘记IC
- 下一篇: “元宇宙” 是什么东西?