具体步骤
[ol]
具体代码在下面,可复制进控制台回车执行,然后继续执行即可获取到所有信息并下载,因为浏览器并行请求有限制,所以修改为同步下载
[/ol]
创建本地覆盖,随便保存个地方,把下载下来的js文件修改为我们需要的
7.之后分享链接直接chrome浏览器打开就可以等待下载所有资源了
代码
var payList = [];
async function downFile(info) {
try {
let playUrl = info.playUrlHigh || info.playUrl || info.playUrlHighEncode || info.playUrlEncode;
console.log('下载' + info.name + playUrl);
let res = await fetch(playUrl);
let blob = await res.blob();
const a = document.createElement('a');
document.body.appendChild(a)
a.style.display = 'none'
const url = window.URL.createObjectURL(blob);
a.href = url;
a.download = info.name + '.mp3';
a.click();
document.body.removeChild(a)
window.URL.revokeObjectURL(url);
} catch (e) {
console.error('下载' + info.name + '失败');
}
}
async function getMp3(index) {
t.pageIndex = index;
let result = await y({
data: k({}, t),
apiUrl: "/wifimusicbox/demand/detail",
method: "POST"
});
if (index == result.totalPage) {
console.error(payList);
}
for (let n = 0; n
代码还有很多可以优化,现在是循环100次来获取所有,返回的信息中有总页数totalPage,我现在是取个大的值确保请求完。
还有更好的处理方式,自己通过接口请求,不用他的请求方式,因为应该有域名和权限限制,没时间研究,有大佬可以研究下
只是学习使用,提供破解思路与方法,请勿用于商业用途。