Listen1 下載音樂方案

kuwo等騰訊系音樂軟件更新了接口,付費音樂全都不可用,Listen1暫時已失效!
好像更新了接口,但音質(zhì)大不如前。

Listen1讓你用一個網(wǎng)頁就能聽到多個網(wǎng)站的在線音樂(現(xiàn)已包括網(wǎng)易云音樂,QQ音樂,蝦米音樂,豆瓣音樂)。你可以非常的簡單的訪問和收聽在線音樂,而不用受到單個音樂網(wǎng)站資源不全的限制了。
它不僅能搜索多家在線音樂提供商的資源,還能方便的整理你喜歡的音樂,制作自己的歌單。盡興的享受音樂吧!

可能出于版權(quán)考慮,listen1 不提供下載功能,但互聯(lián)網(wǎng)中所見即所得,本文提供一種將音樂緩存下載為mp3的解決方案,結(jié)合listen1 Chrome Extension可以批量下載音樂。

說明

  • 打開listen1 Chrome Extension,添加需要下載的歌曲到當(dāng)前播放列表 ;
  • F12打開控制臺,復(fù)制黏貼以下JS代碼后回車開始;
  • 批量下載可以在Chrome下載設(shè)置里關(guān)閉下載前詢問每個文件的保存位置,并設(shè)置好保存位置,避免每次選擇位置;

JS代碼

// 下載函數(shù)
function download(url, title){
    axios.get(url, {responseType: "blob"})
        .then(resp => {
            if(resp.status !== 200) console.log('get file failed.');
            else return resp.data;
        })
// 用blob方式來設(shè)置下載文件名為歌曲名
        .then(blob => {
            let link = document.createElement("a");
            link.href = window.URL.createObjectURL(blob);
            link.download = title;
            link.click();
            window.URL.revokeObjectURL(link.href);
        })
}
//  設(shè)置文件名:歌曲名_歌手.mp3
function get_name(idx){
    let obj = threadPlayer.playlist.filter(obj=>obj.id==idx)[0]
    return obj.title+'_'+obj.artist+'.mp3';
}

// 修改原播放器獲取歌曲鏈接函數(shù),增加獲取鏈接時下載歌曲
threadPlayer.setMediaURI = function setMediaURI(uri, url) { 
      if (url) {
        this._media_uri_list[url] = uri;
//  插入下載函數(shù)
        download(uri, get_name(url));
      }
}
// 循環(huán)播放列表所有歌,獲得每首歌的地址同時觸發(fā)下載
for(let i=0; i<threadPlayer.playlist.length; i++){
    threadPlayer.retrieveMediaUrl(i,false)
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容