Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
导出网易云音乐歌单到 AppleMusic / Spotify 等平台
/**
* 使用方法:
* 1. 用 Chrome 打开歌单的 web 页面(可以通过分享拿到链接,链接类似这样:http://music.163.com/playlist?id=xxx&userid=yyy)
* 2. 然后右键“检查”(如果有左上角有 device 选项,需要选择 Laptop 开头的,可以在 Edit/编辑 里添加)
* 3. 在 console 里输入下面脚本,即可输出 “歌曲名 - 歌手名” 格式的内容:
Springsteen - Eric Church
Chattahoochee - Alan Jackson
Baby Now That I Found You - Alison Krauss
Check Yes or No - George Strait
Meanwhile Back At Mama's (feat. Faith Hill) - Tim McGraw/Faith Hill
。。
* 4.通过 https://www.tunemymusic.com/zh-cn 导出到 Apple Music 或者 Spotify 等音乐平台
*/
(function () {
let iframeDocument = document.getElementById("g_iframe").contentDocument;
let tempElement = iframeDocument.createElement("div");
function getSinger(trNode) {
tempElement.innerHTML = trNode.innerHTML;
return tempElement.getElementsByTagName("span")[0].title;
}
function getSongName(trNode) {
tempElement.innerHTML = trNode.innerHTML;
return tempElement.getElementsByTagName("b")[0].title;
}
let allSongsTRNode = iframeDocument.querySelectorAll('table.m-table > tbody > tr')
var songsStr = "";
allSongsTRNode.forEach(songTR => {
songsStr += (getSongName(songTR.childNodes[1]) + " - " + getSinger(songTR.childNodes[3]));
songsStr += "\n";
});
console.log(songsStr);
})();
@yifeikong

This comment has been minimized.

Copy link

@yifeikong yifeikong commented Nov 27, 2019

奇了怪了,我用 document.getElementById 选择不到。
image

@XueshiQiao

This comment has been minimized.

Copy link
Owner Author

@XueshiQiao XueshiQiao commented Nov 27, 2019

奇了怪了,我用 document.getElementById 选择不到。
image

    1. 用 Chrome 打开歌单的 web 页面(可以通过分享拿到链接,链接类似这样:http://music.163.com/playlist?id=xxx&userid=yyy)
    1. 然后右键“检查”(如果有左上角有 device 选项,需要选择 Laptop 开头的,可以在 Edit/编辑 里添加)
    1. 在 console 里输入下面脚本,即可输出 “歌曲名 - 歌手名” 格式的内容:

第二条满足吗

@ccstuff

This comment has been minimized.

Copy link

@ccstuff ccstuff commented Jul 24, 2020

切换成Laptop开头的 device后需要再手动刷新下
如果没登录,只显示6首歌,可以点击页面上的分享按钮,登录后会显示1k首歌,再次重复楼主的第三步和第四步,就可以导入1k首了
ps 在手机上操作更顺利

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.