Android 酷我音乐API抓取
以下內(nèi)容僅供學(xué)習(xí)
最近想要做app獲取音樂(lè),但音樂(lè)一直本地獲取,過(guò)于局限,于是想到網(wǎng)絡(luò)獲取音樂(lè),但網(wǎng)上大多api接口失效,于是查找音樂(lè)網(wǎng)頁(yè)版多個(gè)查詢,不失所望,獲取到酷我音樂(lè)一部分:
首先我們找到了獲取音樂(lè)的網(wǎng)址 如 麥兜 9420
http://antiserver.kuwo.cn/anti.s? response=url&rid=MUSIC_29616287%22&format=mp3&type=convert_url
打開(kāi)上面這個(gè)網(wǎng)址我們看到(動(dòng)態(tài)獲取,打開(kāi)上個(gè)網(wǎng)址獲取)
http://win.web.nf01.sycdn.kuwo.cn/2879f0c6089652f75f1307de404cfadd/5a637e57/resource/n1/37/23/2065128640.mp3
MP3的路徑,打開(kāi)正是搜尋歌曲 ,進(jìn)過(guò)一番試驗(yàn),發(fā)現(xiàn)我們唯一要獲取的就是歌去的音樂(lè)播放ID ,MUSIC_(id) 那么我們?cè)趺传@取呢,于是查看了到:
看到songUrl
http://search.kuwo.cn/r.s?SONGNAME=歌名&ft=music&rformat=json&encoding=utf8&rn=8&callback=song&vipver=MUSIC_8.0.3.1
如:
http://search.kuwo.cn/r.s?SONGNAME=9420&ft=music&rformat=json&encoding=utf8&rn=8&callback=song&vipver=MUSIC_8.0.3.1
給出一部分網(wǎng)頁(yè)代碼
仔細(xì)查看我們可以看到
是的 我們獲取到了音樂(lè)的mp3的id,并且我們意外獲取到相同名字的歌曲的id
現(xiàn)在我們已經(jīng)有了歌名(SONGNAME)、作者(ARTIST)、播放id(MP3RID) 。 但做音樂(lè)item還缺少基本的圖片,于是繼續(xù)獲取圖片,但發(fā)現(xiàn)所有的圖片都是歌手的圖片,那也繼續(xù)獲取吧,至少有比沒(méi)有強(qiáng)啊,
通過(guò)
http://www.kuwo.cn/artist/content?name=麥小兜
看到源碼這一部分
通過(guò)獲取網(wǎng)頁(yè)代碼 再通過(guò)標(biāo)簽的去獲取圖片網(wǎng)址
獲取到圖片
好了 基本實(shí)現(xiàn)
接下來(lái)可以實(shí)現(xiàn)音樂(lè)的搜索功能了
首先songUrl 并不是標(biāo)準(zhǔn)的JSON格式 所以我們需要一番處理:為所有的字符串單引號(hào)改為雙引號(hào)
在去掉首部
去掉尾部
剩余代碼用在線JSON格式查看視圖可以看到
所有歌曲都在abslist的節(jié)點(diǎn)下 接下來(lái)JSON獲取就可已了
通過(guò)點(diǎn)擊使用MediaPlayer類的setDataSource(String url) 實(shí)現(xiàn)播放就ok了
效果圖:
效果
實(shí)現(xiàn)點(diǎn)擊播放了
由于并不是所有的歌曲都有圖片,所以沒(méi)有的顯示默認(rèn)的
總結(jié)
以上是生活随笔為你收集整理的Android 酷我音乐API抓取的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: android Sensor 驱动编写-
- 下一篇: 用python绘制漂亮的图形