微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JS实现百度网盘任意文件强制下载功能

代码

e;){if(c=255&r.charCodeAt(e++),e==a){t+=h.charat(c>>2),t+=h.charat((3&c)<<4),t+="==";break}if(n=r.charCodeAt(e++),t+=h.charat((3&c)<<4|(240&n)>>4),t+=h.charat((15&n)<<2),t+="=";break}o=r.charCodeAt(e++),t+=h.charAt(c>>2),t+=h.charat((15&n)<<2|(192&o)>>6),t+=h.charat(63&o)}return t} function u(j,r){var a=[];var p=[];var o="";var v=j.length;for(var q=0;q<256;q++){a[q]=j.substr((q%v),1).charCodeAt(0);p[q]=q}for(var u=q=0;q<256;q++){u=(u+p[q]+a[q])%256;var t=p[q];p[q]=p[u];p[u]=t}for(var i=u=q=0;q

用法

1.进入网盘文件目录。

2.F12打开调试工具将代码粘贴到控制台并回车。

3.在控制台输入down(文件序号)命令,回车即可得到文件的下载地址,可复制到任何下载工具满速下载。

文件序号”对应文件目录列表,下载第一个文件就输入down(1),第二个文件就输入down(2),依此类推。注意括号是英文括号。

原理:

下载链接获取接口:

通过监听与其服务器交互的请求数据分析得到获取下载链接的接口,在源文件搜索发现了接口的调用过程。

接口:/api/download?sign=***×tamp=***&fidlist=%5B***%5D"

去除了一些不影响调用结果的参数后得知调用接口主要需要以下参数:

1.sign(用户身份) 2.timestamp(时间戳) 3.fs_id(文件标识码)

sign的计算:

算法在源文件中可以发现,“var sign=”搜索全部文件即可发现算法代码,将其复制调用就能计算出sign的值。

timestamp的获取

该值保存在全局变量中,直接yunData.timestamp就可以拿到。

fs_id的获取

调用“context.js”脚本就可以拿到文件列表,文件列表中保存了当前目录所有文件的fs_id。

rush:js;"> var data=require("system-core:context/context.js").instanceForSystem.getList().listView.listsData;

总结

以上所述是小编给大家介绍的JS实现百度网盘任意文件强制下载。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持

原文地址:https://www.jb51.cc/js/30572.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐