好家伙,花了一個(gè)月時(shí)間,用Python寫了個(gè)網(wǎng)易云!
在下方公眾號(hào)后臺(tái)回復(fù):面試手冊(cè),可獲取杰哥匯總的 3 份面試 PDF 手冊(cè)。
大家好,我是杰哥。
昨晚狂刷 B 站的時(shí)候,看到了一個(gè)不錯(cuò)的小項(xiàng)目。
一個(gè) up 的畢業(yè)設(shè)計(jì),用 Python 寫了一個(gè)網(wǎng)易云,實(shí)現(xiàn)“音樂自由”。
想到公眾號(hào)很多小伙伴,正好需要 Python 的練手小項(xiàng)目,火速趕稿,推薦給大家。
整體開發(fā)環(huán)境是在 PyCharm 中實(shí)現(xiàn)的,用的 Python 是 3.6.8。
依賴的第三方庫有:
PyQt5:用于圖形界面的開發(fā)
shelve:用于序列化對(duì)象
requests:爬取數(shù)據(jù)
涉及的知識(shí)點(diǎn)有網(wǎng)絡(luò)爬蟲,多線程多進(jìn)程開發(fā)、界面設(shè)計(jì),軟件開發(fā),以及一些第三方庫的使用。
功能展示
先 Show 一下效果。
根據(jù)關(guān)鍵詞(音樂標(biāo)題、歌手、專輯)進(jìn)行全網(wǎng)搜索。

爬取每日榜單,聽最 fashion 的音樂。

詞云統(tǒng)計(jì),將你的個(gè)性用圖片來展示。

還可以把音樂一鍵傳給手機(jī)。

還可以播放本地音樂。

也可以下載爬取到的音樂。

總之,功能很多,還有最近播放,歌曲收藏功能。
技術(shù)總結(jié)
技術(shù)難點(diǎn)
自定義窗口導(dǎo)航欄(窗口位置拖動(dòng)、窗口大小拖拽)
音樂播放器的實(shí)現(xiàn),多種狀態(tài)的調(diào)和
對(duì)象持久化,慎用shelve庫
多線程問題處理
Up主的一些話
從項(xiàng)目立項(xiàng)到答辯,從對(duì) PyQt5 各個(gè)組件的學(xué)習(xí)到整個(gè)項(xiàng)目的完成,在這一個(gè)多月的時(shí)間里,遇到了諸多困難,也曾想過放棄一些功能,但最終還是一一實(shí)現(xiàn)了,編程本是一件乏味枯燥的活,但此時(shí)此刻,我心中的成就感,非常的奧里給!
最后
項(xiàng)目源碼,添加杰哥私人微信:Hc220088,備注「網(wǎng)易云」,即可獲得。
Up 的項(xiàng)目視頻:
好了,項(xiàng)目就推薦到這里。
參考鏈接:
https://www.bilibili.com/video/BV1nM4y1M7EE
https://blog.csdn.net/qq_44486437/article/details/118614347
來源丨JackCui
推薦閱讀
這 10 個(gè) Python 可視化工具,你用過哪些?

