網易雲音樂貌似沒有提供批量操做的功能,而這個歌單好像又不能刪掉,因此刪的時候得一個個刪,至關蛋疼。不過看了下刪除操做,是請求一個api,傳遞相應參數便可。jquery
首先打開歌單頁面,地址是:api
http://music.163.com/#/my/m/music/playlist?id=xxxxx 網絡
其中xxxxx是歌單的ID號,打開console,隨便刪一首歌,能夠看到網絡請求爲:app
/api/playlist/manipulate/tracks?csrf_token=64f353b064b83d3c692ca05d4db2848apost
請求參數:spa
pid:xxxxx3d
trackIds:["yyyyy"]code
op:delcsrf
其中csrf_token是請求api的令牌,有可能會失效,若是失效之後,刷新下頁面,再刪一首能夠看到新的令牌token
參數中xxxxx是歌單ID,yyyyy是要刪除的歌曲ID
ok,下面就來批量操做
打開console
加載jQuery(網易雲音樂頁面上沒有使用jQuery)
var jq = document.createElement('script'); jq.src = "http://libs.baidu.com/jquery/1.7.2/jquery.min.js"; document.getElementsByTagName('head')[0].appendChild(jq);
敲一下jQuery看看是否是加載成功。注意,頁面上有兩個iframe,加再的時候注意選擇,要選擇歌單的iframe,而不是播放器的iframe
而後就是刪除操做了
jQuery(".icn-del").each(function(a,b){ var data = { pid : xxxxx, trackIds : "[\""+jQuery(b).attr("data-res-id")+"\"]", op : "del" } jQuery.post("/api/playlist/manipulate/tracks?csrf_token=72e4c368b414ce8f9951aacb07e6f452",data,function(data){ console.log(data) }); });
pid根據歌單本身替換,歌曲ID是從頁面上遍歷循環取出來的,token也本身替換下
須要說明的是,API請求太過頻繁時,token會失效,稍等一會再手動試一下,換個新的token
我試的時候一個token大概能刪100首左右。Have fun~