18 行 Python 代码将 spotify 歌单导入网易云音乐

2016-08-09 15:01:06 +08:00
 zhangolve

最近一直在用 Spotify 在线听歌, Spotify 的好处在于能够发现更多好听的歌曲。然而,它的订阅实在是太贵了,因此也就不能够离线下载,而虽然我在用 Spotify ,但是也没有抛弃网易云音乐,用它来下载歌曲也很不错,网易云音乐的评论区也往往欢乐多多,因此,我就有了这个想法,想要将 Spotify 的歌单转到网易云音乐歌单。 思路

上网 google 了一番之后,发现确实有很多的中文用户乃至于外国用户在纠结着怎样导出 Spotify 的歌单甚至是下载整个歌单的歌曲。我首先找到了 Exportify 这个网站,它是能够通过接入 Spotify 的 API 来将 Spotify 的歌单找到并支持导出为 CSV 格式的文件。

而我们知道,网易云音乐也是支持导入歌单的,但仅限于酷狗或酷我的歌单,而酷狗的歌单文件是.kgl 格式的,因此如果要想将 Spotify 歌单转到网易云音乐歌单,我们就首先需要将这种 CSV 格式的文件转成 kgl 格式的文件。

本来我是想着用 JS 的,因为最近一段时间都在用 JS ,但是从操作文件的角度上讲,我觉得 Python 还是更有优势的。虽然 Python 已经很久没用了,但是还是想尝试一下。

完整的过程: http://hktkdy.com/2016/08/09/201608/spotify-to-easenet/

任何意见或建议,欢迎指出。

9251 次点击
所在节点    音乐
22 条回复
mzeht
2016-08-09 15:27:55 +08:00
这个标题取名很有技巧
TimePPT
2016-08-09 16:00:30 +08:00
你这 python 只是 json 转 xml 吧,整个导入功能也没实现啊。
以及, python 做 csv 转 xml 也不麻烦啊,你用个网页三方工具粘贴转换再复制出来功夫代码都写完了
zhangolve
2016-08-09 16:06:57 +08:00
@TimePPT 不知道你有没有点进链接看我的全文。第一,我做的是 json 转 kgl ,第二,从 csv 到 json 的过程我的确没有实现。第三,我 python 确实不熟,不晓得 csv 转 xml ,如果你能够实现,我文中说了,也请指出并提供方案。
TimePPT
2016-08-09 16:17:46 +08:00
@zhangolve 看了原文才发的评论啊, kgl 文件本质不就是 xml 么?
zhangolve
2016-08-09 16:22:35 +08:00
@TimePPT OK,谢谢,仔细想了一下你说的,的确是个挺好的思路。我会试试的。
ps 不过那样肯定就不是 18 行 python 喽。。。
TimePPT
2016-08-09 16:26:27 +08:00
@zhangolve 代码多少无所谓,实现整个功能意义更大,这个需求是典型的 workflow (不是 Alfred 那个 workflow 哦),如果能一次实现,之后的操作成本会降很多。
等实现出 demo 后可以考虑运行效率。

作为一个死 pm ,经常遇到后台技术不给加统计后台功能,都是我自己用 python 写了脚本取各种接口数据本地做格式转换与分析的,所以这块比较有感触。
zhangolve
2016-08-09 16:38:30 +08:00
@TimePPT 学习了。其实还可以直接调用 Spotify API 获取 XML 文件,这样就连第一步都省了。只是我 Python 就是个现学现用,况且 Spotify 是要科学上网的,都是坑啊。如果能够实现,就能够像你说的那样了。
TimePPT
2016-08-09 16:44:16 +08:00
@zhangolve 互相学习^_^
如果能直接获取 xml 的话是最好的了,根据网易云导入的要求做下修改应该就能导入了。
ilukechern
2016-08-10 09:02:12 +08:00
为什么要先转 json 格式呢? Python 本身就有 csv 包。
zhangolve
2016-08-10 10:14:37 +08:00
@ilukechern 这个问题楼上已经有人指出,会修改的。
JesseLexin
2016-12-09 10:54:54 +08:00
我尝试之后,发现绝大多数的 gkl 列表都会导入失败。目前,我的 10 多个 spotify 列表,只有一个成功导入了网易 -_-!!!
zhangolve
2016-12-09 11:00:29 +08:00
@JesseLexin 网易云音乐里面的曲库数目不全,如果发现库里面没有对应的歌曲,就容易造成导入失败。我之前也遇到过这个问题,我的解决是对 gkl 文件进行手动编辑,先删除一半的歌曲试试,这样导,总之还是稍微麻烦点。
wswj
2016-12-26 19:45:43 +08:00
@zhangolve 我发现把& , #这类符号去掉就可以成功导入了。 starred 歌单的 500 多首歌,到了网易云只剩下 280 首, weekly 的歌相对小众点, 30 首还剩下 10 首...
暂时看还是只能用 spotify 为主
zhangolve
2016-12-26 20:19:27 +08:00
@wswj 恩,感谢反馈。 这个可能 @JesseLexin 也需要吧 。
CEBBCAT
2018-06-12 23:45:49 +08:00
2018,网易导入歌单文件功能关闭了,楼主有什么解决的方法吗?
lada05
2018-12-20 19:22:47 +08:00
@CEBBCAT #15 同问,你现在有方法了吗?或者还有哪个中文在线音乐流服务,支持导入 歌手-歌名 这种格式歌单的?
CEBBCAT
2018-12-20 19:34:27 +08:00
@lada05 #16 我那时候应该是没找到
lada05
2018-12-20 19:41:21 +08:00
@CEBBCAT #17 网易云音乐支持“截图导入歌单”的,你试过吗?
截图的缺陷是,一屏幕就那么大,每次顶多导个 10 首左右,麻烦,所以我还没试……
lada05
2018-12-20 19:41:52 +08:00
@CEBBCAT #17 忘记链接了:
网易云音乐怎么截图导入歌单
https://jingyan.baidu.com/article/ad310e800e9c371849f49ea2.html
CEBBCAT
2018-12-20 20:40:53 +08:00
@lada05 #18
原来出了这么个功能,我之前都不知道。我等会试试看看能不能抓到包(极有可能鸽)

图片的话,不知可不可以批量导入或者支持长截图,那样的话可以写个程序生成吧我想

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/298118

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX