之前发了一篇帖子,修改了pandownload里边的盘搜搜的插件,第一次发帖,写的不是很清晰,排版也很差,而且还忘记了分享成果,真是丢人丢到家了,希望大佬们多多包涵。
希望这次能够写的好一点~~
后来看到了这么一条评论
我才知道qq音乐的插件也不能用了,然后在论坛中发现了这篇帖子,目前还没有作出更新。
于是我决定打开看一看是哪里出了问题。
打开软件进行搜索,
搜索是没有任何问题的,但是点击下载就会报错。提示lua调用失败:
打开日志文件,发现问题出现在第63行,变量 j 为空。
我们找到第63行
j为空的话就说明上边的decode得到的数据是有问题的。这行代码为
[Lua] 纯文本查看 复制代码 local j = json.decode(get("http://host811205719.s493.pppf.com.cn/api.php?types=url&source=tencent&id=" .. item.mid .. "&br=" .. quality))
在这个的上边还有一行代码
[Lua] 纯文本查看 复制代码 local data = get("https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=txt.yqq.song&searchid=0&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=" .. page .. "&n=20&g_tk=5381&loginUin=0&hostUin=0&format=jsonp&inCharset=utf8&outCharset=utf-8¬ice=0&platform=yqq&needNewCode=0&w=" .. urlEncode(key))
我把这几个出现的变量打印出来,得到的结果为:
所以便得到了获取音乐的连接:
http://host811205719.s493.pppf.com.cn/api.php?types=url&source=tencent&id=001BKGVe1BctBv&br=128
但是访问为404
同时得到了查找音乐信息的链接
https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=txt.yqq.song&searchid=0&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=1&n=20&g_tk=5381&loginUin=0&hostUin=0&format=jsonp&inCharset=utf8&outCharset=utf-8¬ice=0&platform=yqq&needNewCode=0&w=%E8%AE%B8%E5%B5%A9
该链接访问正常。能够正确获取到音乐的信息。
该ip是通的,我又根据上图中返回的数据对上上个链接的参数进行了多次替换,发现均无法获取到音乐文件,一直是404,我觉得问题可能就是api.php不存在了。
然后我去看了一下官方的网页。
不过我发现了一件有意思的事情:
https://y.qq.com/n/yqq/song/001BKGVe1BctBv.html
qq音乐后边的参数和插件里边的音乐id是一样的,都是001BKGVe1BctBv,所以我觉得这个api可能是直接调用了官方的接口,于是我F12看了一下官方的网页,结果出来一大堆东西,我觉得我这等菜鸡也找不出来真正的音乐文件连接,就放弃了。
后来我在某网站看到了下载网易云音乐的链接:
http://music.163.com/song/media/outer/url?id=xxxxxxxxxxxxx.mp3
这个xxxxxxxxxx的id可以直接在网易云的网站上获取到:
直接替换即可,比如http://music.163.com/song/media/outer/url?id=28854182.mp3
就可以下载音乐。
方法挺傻瓜的,有兴趣的大佬可以尝试把它做成一个插件,供学习交流之用。不过下载下来的都是4,5M的普通音质,高音质的音乐还需到客户端中下载,所以还不如直接用客户端。
至于之前插件里边的api,也许有一天它恢复了就可以用了。
后来看了一下搜索音乐的那个网站,发现和下载音乐的url不在同一ip上,也许它们是两家没什么关系?
所以我又在c.y.qq.com这个网站上找了找有没有能下载的途径,并没有发现什么东西。
|