當前位置:
首頁 > 科技 > 零基礎如何用 15行Python 代碼搞定網易雲熱門歌單?

零基礎如何用 15行Python 代碼搞定網易雲熱門歌單?

健身、吃飯、敲代碼;等車、擼貓、下午茶……若能佐以合適的音樂當「配餐」,總是愜意非常。本文就將帶你爬一爬網易雲的那些熱門歌單!

作者 | 上海小胖

責編 | 仲培藝

心情好或心情壞,點一首歌撫慰你受傷或躁動的心靈——下面教你用 15 行代碼搞定熱門歌單!

本文使用的是 Selenium 模塊,它是一個自動化測試工具,利用它我們可以驅動瀏覽器執行特定的動作,如點擊、下拉等操作,對於一些 JavaScript 渲染的頁面來說,此種抓取方式非常有效。

採用了 Chrome 瀏覽器配合 Selenium 工作,本文的 Python 版本是 3.7.2。

準備工作

1. 若你的環境中沒有 Selenium 模塊,直接使用 pip 安裝即可:

pip install selenium

2. 打開谷歌瀏覽器,檢查Chrome的版本:在瀏覽器地址中輸入 chrome://settings/help 回車即可看到:

3. 打開 ChromeDriver 的官方網站(https://sites.google.com/a/chromium.org/chromedriver/downloads),尋找與你當前瀏覽器版本相對應的 ChromeDriver 下載:

4. 選擇你自己的操作系統類型進行下載即可:

5. 以 Windows 為例,下載結束後,將 ChromeDriver 放置在 Python 安裝目錄下的 Scripts 文件夾即可:

準備工作完成,代碼寫起來吧~

迷你爬蟲的實現

我們這次的目標是爬取熱門歌單,比如網易雲音樂中播放量大於 1000萬 的歌單信息(歌單名稱、鏈接)。

1. 先來打開網易雲的歌單第一頁:

https://music.163.com/#/discover/playlist/

2. 使用 Chrome 的開發者工具 進行分析:

我們想要拿的信息全在這裡:

msk,封面 [mask]:有歌單的名稱及鏈接

nb,播放數 [number broadcast]:135萬

3. 我們還需要遍歷所有的頁,使用工具繼續分析,找到「下一頁」的 URL:

4. 切換至最後一頁,拿到最後一頁的 URL:

5. 等我們爬取完所有符合的歌單信息後,將其保存在本地;

6.全部工作結束,最後再通過下面的偽代碼回顧下整體思路:

7. 爬取的效果如下:

另附源碼:https://github.com/MiracleYoung/You-are-Pythonista/tree/master/PythonExercise/Tool/Mini_Crawl

作者簡介:上海小胖,四大諮詢的TechLead,mongoDB Professional 獲得者。「Python專欄」專註Python領域的各種技術:爬蟲、DevOps、人工智慧、Web開發等。

本文系作者投稿,版權歸作者所有。

熱 文推 薦

你點的每個「在看」,我都認真當成了喜歡


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

如何在一行 rm -rf 的基礎上釋放 Mac 上的內存空間?
代碼編輯器橫評:為什麼 VS Code 能拔得頭籌?| 程序員硬核評測

TAG:CSDN |