很早以前就想做一个能从 Google Music 上下载一张专辑的软件,毕竟一首歌一首歌的去点击有点麻烦,但是当时也啥也不会,看HTML页面是如何跳转的也完全没有头绪,然后就放下了这个念头。后来看到有人做出了这种功能的软件,虽然没有使用,但是心里也有了个印象。
前阵子因为 GAE 的原因,学了一些 Python 编程,试着用 BeautifulSoup 写了一些小程序,也算是学了点东西。
前段时间又看到那个软件,就想下下来试试。但是作者只提供的 MFC 和 Java 版本的,在 Mac 下不太方便,所以就读了读作者提供的源代码,自己写了个 Python 的脚本。
GMusicDown 程序链接:http://sites.google.com/site/clock88731/Software/GMusicDown(貌似需要翻墙访问)
小众软件介绍 GMusicDown 链接:http://www.appinn.com/gmusicdown
在这里特别感谢这个作者吧。(貌似是大我一届的华中科技大的学长。。。)
我写的脚本的程序截图:
具体的代码就不贴了,没有太多的技术含量,有需要或者想跑跑试试的同学见github。
程序在这里:https://github.com/Eec/GMusicDownloader
简单说下还存在的问题:
-
链接抓多了,服务器会记录你的IP,然后每次打开下载页都需要输入验证码的。我没有写任何破解验证码的程序,Google 的这个验证码对于现阶段的我来说还是个太技术的活了。好在输入一次验证码后,验证码中的 Token 会有效一段时间,足够抓取整个专辑的下载地址了,具体怎么操作程序中有写。
-
野蛮地开启了和歌曲数量相同的线程数。
-
Python 中文编码遇到了一点小问题,花了一些时间才搞定。
完。