最新阿里云盘自动签到,自动更新token免部署

阿里网盘自动签到脚本,领取5天SVIP会员
阿里网盘自动签到脚本,领取5天SVIP会员
当初打着不限速口号的阿里云盘现在也开始限速了,由原来的十几M跑满到现在的1-2M的速度,虽然没有某大厂网盘限得狠,但是当初大厂也不是一步就到现在的十几K的速度啊! 所以不限速

注意

关于备份奖励领取失败的情况说明:目前没有抓包去自动达到领取备份奖励的条件

所以如果需要领取备份奖励。需要你的手机/电脑开启自动备份 且当天 登录成功一次。【手机可以开启后台自启动】

如果你手机都不启动阿里云盘 他自然今天没法备份 自然就没法领取备份奖励。

关于 pusplus推送失败的情况说明:运行的时候调用的是金山云的服务器IP 。可能由于部分IP调用过多,被pusplus推送的官方拉黑IP了

所以导致了可能提示(XXX禁止访问 )导致推送失败 但是每天都是正常签到的 。这点无需担心

功能以及优点

不需要服务器部署、直接一个wps云文档即可使用。

理论上实现了token的自动更新 目前测试没问题 (只需要获取token一次、无需后续抓包)。

利用自己想到的避开了检测【随机时间延迟、不同时间签到】(IP没改,因为很多人不会用)。

根据随机值决定签到的时间。避开了每天都是那个时间签到的检测。

增加了手机开启自动备份的签到奖励【需要手机开启备份功能 并且开启自启动 不然当天不登录阿里云盘则无法领取】

不需要开电脑、不需要任何成本,都是云运行, 一次获取,理论上可以用很久,具体多久就得到时候测试看了。

使用方法

1.首先 打开wps云文档的连接 并且另存为 保存成你自己的!

【金山文档】 阿里云签到模版-另存为:https://kdocs.cn/l/coSH7LfVJjNt

2.点击【效率】-【高级开发】-【AirScript脚本编辑器】 查看 【阿里云盘签到】的 是否存在(如不存在请复制最下方的代码 放进去)

3. 打开阿里云盘 :https://www.aliyundrive.com/ 登录后 连续按两次右键 选择 检查/审查元素 看不同浏览器的配置 或者更简单的 按F12 即可

最新阿里云盘自动签到,自动更新token免部署插图1

4.输入以下代码 将命令粘贴到【控制台】-【回车】

copy(JSON.parse(localStorage.token).refresh_token); console.log(JSON.parse(localStorage.token).refresh_token);

最新阿里云盘自动签到,自动更新token免部署插图2

5.将获取到的token粘贴到【A1】单元格顺便将token获取时间填入,不填当token大于20天时无法更换

最新阿里云盘自动签到,自动更新token免部署插图3

6.获取pushplus和Serverchan的token

两个选择一个即可,两个选择一个即可,推荐pushplus

公主号:pushplus推送加 关注后 发送“token” 即可获得token 复制 token 粘贴到推送(PushPlus) 的那一栏里(D列)

最新阿里云盘自动签到,自动更新token免部署插图4

Serverchan-扫码登录

Serverchan:https://sct.ftqq.com/ 右上角 登入 登入后 拿到如下图的sendkey 粘贴到推送(ServerChan)的那一栏里(C列)

最新阿里云盘自动签到,自动更新token免部署插图5

如果你到了这里 就90%大功告成了!

7.接下来就是 测试!

如果推送成功/日志提示 签到成功 就说明你已经成功了

【如果提示:随机值不为1 不签到】【如果提示:随机值不为1 不签到】

请再次点击运行!请再次点击运行!请再次点击运行!

最新阿里云盘自动签到,自动更新token免部署插图6

8。创建定时任务 【可以创建多个 可以一个 建议多个】

最新阿里云盘自动签到,自动更新token免部署插图7

你们自己可以修改的地方:

1.代码第3行:var dengdai = 1 即:1是延迟0-1分钟内 取一个秒数 就是0到60秒取一个随机数 不建议修改

2.代码第6行:var renwu = 2 即:你加了几个定时任务 然后-1 就是你定时2个任务 就写2 定时3个 就写2 定时4、5个建议也写3 建议最大到2或者3

简言之:比如你定时任务X个 然后每一次执行都会从1 到 你设置的数 之间取一个随机值 是1 才签到

PS:如果你只需要一个定时任务 renwu 请写1。

3.代码第7行:var zong = 10 即: 一共执行10个任务 如果你需要多增 那就在前10行内随意一行 :插入行 就可以了(保持原作者的第11 行一直在所有token最下面)

4.最重要的,如果你手机没有开启 自动备份功能 不需要领取自动备份的奖励的话!

第11行的 var backups = true true 改成 false 如果你需要领取 就不动!

最新阿里云盘自动签到,自动更新token免部署插图8

配置过程中可能遇到的问题

1.问:配置完成,运行脚本出现{"code":999,"msg":"所在IP:120.92.xx.xxx禁止访问","data":null}

答:切换网络再次运行或过会在尝试

以下是代码

var myDate = new Date(); // 创建一个表示当前时间的 Date 对象
var data_time = myDate.toLocaleDateString(); // 获取当前日期的字符串表示
var date = `${new Date().getMonth() + 1}-${new Date().getDate().toString().padStart(2, '0')}`
 
 
//需要修改的地方
var dengdai = 2
//意思是 等待多少分钟去登录 等待多少分钟去签到  默认1-15分钟之间 改了15就是1-X分钟之间 取随机的
var renwu = 2   //建议定时2个任务 就写1  定时3个任务就写2  定时任务-1或者-2都可以  他是从1到renwu之间 取一个随机数
var zong = 10   //总任务  就是你有几个号你就写几  就行 默认10 也可以 如果多10行  就在10行以内 右键 插入行
var backups = true  //是否领取备份奖励  是写true  不领取写false
 
function sleep(d) {
    for (var t = Date.now(); Date.now() - t <= d;); // 使程序暂停执行一段时间
}
 
function log(message) {
    console.log(message); // 打印消息到控制台
    // TODO: 将日志写入文件
}
 
var tokenColumn = "A"; // 设置列号变量为 "A"
var qiandaoColumn = "B"; // 设置列号变量为 "B"
var serverchanColumn = "C"; // 设置列号变量为 "C"
var pushplusColumn = "D"; // 设置列号变量为 "D"
var pushColumn = "E"; // 设置列号变量为 "E"
var logindateColumn = "F"; // 设置列号变量为 "F"
var signinresult = "G"//签到的结果  设置列号变量为 "G"
 
for (let row = 1; row <= zong; row++) { // 循环遍历从第 1 行到第 10 行的数据
    var refresh_token = Application.Range(tokenColumn + row).Text; // 获取指定单元格的值
    var qiandao = Application.Range(qiandaoColumn + row).Text; // 获取指定单元格的值
    var servertoken = Application.Range(serverchanColumn + row).Text; // 获取指定单元格的值
    var pushtoken = Application.Range(pushplusColumn + row).Text; // 获取指定单元格的值
    var push = Application.Range(pushColumn + row).Text; // 获取指定单元格的值
    var ldate = Application.Range(logindateColumn + row).Text; // 获取指定单元格的值
    var signin = Application.Range(signinresult + row).Text; // 获取签到结果
    if (refresh_token != "") { // 如果刷新令牌不为空
        if (qiandao == "是") {//签到&领奖开关
            if (signin !== date + '已签到') {
                var randomInt = Math.floor(Math.random() * renwu) + 1
                //randomInt  中的3 可以修改  写3就是 从1到3取一个随机整数 比如2  当他 = 1 的时候 签到才会执行
                if (randomInt === 1) {//等于1 就开始签到  不等于1 都不签到
 
                    //获取Bearer-token
                    var mtid = parseInt(Math.floor(Math.random() * 60000 * dengdai)) + 6000
                    var loginresult = "登录延迟" + parseFloat((mtid / 120000).toFixed(2)) + "分,即" + + parseFloat((mtid / 2000).toFixed(2)) + "秒"
                    console.log("登录延迟" + parseFloat((mtid / 120000).toFixed(2)) + "分,即" + + parseFloat((mtid / 2000).toFixed(2)) + "秒")
                    Time.sleep(mtid / 2)
                    let data = HTTP.post("https://auth.aliyundrive.com/v2/account/token",
                        JSON.stringify({
                            "grant_type": "refresh_token",
                            "refresh_token": refresh_token
                        })
                    )
                    data = data.json()
                    var access_token = data['access_token']
                    var phone = data["user_name"]
                    if (access_token == undefined) { // 如果报错
                        console.log("单元格【" + tokenColumn + row + "】token执行出错,请检查token或者API接口");
                        continue; // 跳过当前行的后续操作()
                    }
                    var mtid = parseInt(Math.floor(Math.random() * 60000 * dengdai / 2)) + 6000
                    var signresult = "签到延迟" + parseFloat((mtid / 60000).toFixed(2)) + "分,即" + + parseFloat((mtid / 1000).toFixed(2)) + "秒"
                    console.log("签到延迟" + parseFloat((mtid / 60000).toFixed(2)) + "分,即" + + parseFloat((mtid / 1000).toFixed(2)) + "秒")
                    Time.sleep(mtid)
                    try {
                        // 签到
                        var access_token2 = 'Bearer ' + access_token; // 构建包含访问令牌的请求头
                        let data2 = HTTP.post("https://member.aliyundrive.com/v1/activity/sign_in_list",
                            JSON.stringify({ "_rx-s": "mobile" }),
                            { headers: { "Authorization": access_token2 } }
                        );
                        data2 = data2.json(); // 将响应数据解析为 JSON 格式
                        var signin_count = data2['result']['signInCount']; // 获取签到次数
                        var result1 = "账号:" + phone + " - 签到成功";
                        var result2 = "本月累计签到 " + signin_count + " 天";
                        console.log(result1)
                    } catch (error) {
                        console.log("单元格【" + tokenColumn + row + "】签到出错,请检查API接口");
                        continue; // 跳过当前行的后续操作()
                    }
                    Time.sleep(3000)
                    try {
                        // 领取奖励
                        let data3 = HTTP.post(
                            "https://member.aliyundrive.com/v1/activity/sign_in_reward?_rx-s=mobile",
                            JSON.stringify({ "signInDay": signin_count }),
                            { headers: { "Authorization": access_token2 } }
                        );
                        data3 = data3.json(); // 将响应数据解析为 JSON 格式
                        var result3 = data3["result"]["name"]; // 获取奖励名称
                        var result4 = data3["result"]["notice"]; // 获取奖励描述
                        Application.Range(signinresult + row).Value = date + '已签到'
                        //把签到结果 写入文档内
                        console.log(result4)
                    } catch (error) {
                        console.log("单元格【" + tokenColumn + row + "】领奖出错,请手动确认");
                        continue; // 跳过当前行的后续操作()
                    }
                    if (backups === true) {
                        // try {
                        // 备份的奖励 
                        var access_token2 = 'Bearer ' + access_token; // 构建包含访问令牌的请求头
                        let data5 = HTTP.post("https://member.aliyundrive.com/v2/activity/sign_in_task_reward",
                            JSON.stringify({ "signInDay": signin_count }),
                            { headers: { "Authorization": access_token2 } }
                        );
                        data5 = data5.json(); // 将响应数据解析为 JSON 格式
                        // console.log('备份奖励', data5)
                        var success = data5['success']
                        if (success == true) {
                            var result5 = data5["result"]["notice"]; // 获取奖励名称
                        } else {
                            var result5 = data5["message"] // 失败原因
                        }
 
                        console.log(result5)
                        // } catch (error) {
                        //     console.log("单元格【" + tokenColumn + row + "】领取备份出错,请检查API接口");
                        //     continue; // 跳过当前行的后续操作()
                        // }
                    } else {
                        console.log('不领取备份奖励')
                    }
 
 
                    var loginnotice = "" //20天后自动刷新refresh_token
                    var ldate = Application.Range(logindateColumn + row).Text; // 获取指定单元格的值
                    if (ldate !== '') {
                        Application.Range(logindateColumn + row).NumberFormat = 'yyyy-mm-dd;@'
                        var formatlogindate = Application.Range(logindateColumn + row).Text
                        console.log(formatlogindate)
                        function formatDateTime(date) {
                            const year = date.getFullYear();
                            const month = date.getMonth() + 1;
                            const day = date.getDate();
                            return `${year}-${pad(month)}-${pad(day)} `;
                        }
                        function pad(num) {
                            return num.toString().padStart(2, '0');
                        }
                        const currentDate = new Date();
                        var formacurrentdate = formatDateTime(currentDate);
                        console.log(formacurrentdate)
                        function getDate(strDate) {
                            if (strDate == null || strDate === undefined) return null;
                            var date = new Date();
                            try {
                                if (strDate == undefined) {
                                    date = null;
                                } else if (typeof strDate == 'string') {
                                    strDate = strDate.replace(/:/g, '-');
                                    strDate = strDate.replace(/ /g, '-');
                                    var dtArr = strDate.split("-");
                                    if (dtArr.length >= 3 && dtArr.length < 6) {
                                        date = new Date(dtArr[0], dtArr[1], dtArr[2]);
                                    } else if (date.length > 8) {
                                        date = new Date(Date.UTC(dtArr[0], dtArr[1] - 1, dtArr[2], dtArr[3] - 8, dtArr[4], dtArr[5]));
                                    }
                                } else {
                                    date = null;
                                }
                                return date;
                            } catch (e) {
                                alert('格式化日期出现异常:' + e.message);
                            }
                        }
                        var timeslong = getDate(formacurrentdate).getTime() - getDate(formatlogindate).getTime();
                        console.log(timeslong)
                        if (timeslong > 1728000000) {//时间差单位毫秒
                            var loginnotice = "登录已超20天自动刷新refresh_token";
 
                            let my_token = HTTP.post("https://auth.aliyundrive.com/v2/account/token",
                                JSON.stringify({
                                    "grant_type": "refresh_token",
                                    "refresh_token": refresh_token
                                }));
                            my_token = my_token.json()["refresh_token"]
                            if (my_token) {
                                console.log("当前账号refresh_token刷新为", my_token);
                                Application.Range(tokenColumn + row).Value = my_token;
                                console.log("当前账号登录日期刷新为", formacurrentdate);
                                Application.Range(logindateColumn + row).Value = formacurrentdate
                            }
                        }
                    }
 
 
                    //推送
                    if (servertoken !== '' && push == "Serverchan") {//serverchan通道推送
                        const urls = "https://sctapi.ftqq.com/" + servertoken + ".send"
                        let response = HTTP.post(
                            urls,
                            {
                                title: result1,
                                desp: loginresult + '\n\n' + signresult + '\n\n' + '' + result2 + '\n\n' + result4 + '\n\n' + result5 + '\n\n' + loginnotice + '',
                            },
                            {
                                headers: {
                                    "Content-Type": "application/json",
                                },
                                timeout: 60000, // 设置超时时间
                            }
                        );
                        // 打印推送结果
                        console.log(response.text());
                    }
 
                    if (pushtoken !== '' && push == "Pushplus") {//pushplus通道推送
                        const urlp = "https://www.pushplus.plus/send"
                        let response = HTTP.post(
                            urlp,
                            {
                                "token": pushtoken,
                                "title": "阿里云盘-签到通知",
                                "content": loginresult + '\n' + signresult + '\n' + '' + result1 + '\n' + result2 + '\n' + result4 + '\n' + result5 + '\n' + loginnotice + '',
                                "channel": "wechat",
                                "template": "html"
                            },
                            {
                                headers: {
                                    "Content-Type": "application/json",
                                },
                                timeout: 60000, // 设置超时时间
                            }
                        );
                        // 打印推送结果
                        console.log(response.text());
                    }
 
 
                } else {//randomInt 不等于1  不签到
                    console.log('取得随机值不是1,不签到')
                }
 
            } else {//签到了
                console.log(date + '已签到')
            }
        }//不需要签到
    }//令牌为空
    //无有效token
}
上一篇 电视开机启动助手软件,开机自启动第三方软件
下一篇 大众点评新年集卡抽最高888亓

探索站点内容

搜索文章、标签、分类

MediaClaw 社媒虾
MediaClaw 社媒虾
关注公众号
领美团外卖神券
领美团外卖神券
最新评论
15579854855
15579854855
9月15日
安装流程都没有,下载也用不了,浪费时间
小高网
小高网
9月15日
这个还是少用好
06285142
06285142
9月14日
怎么现在都没出绿色版的绿泡泡了。等了一年了呢
小高网
小高网
9月9日
那就找个完整版的安装覆盖上去吧
白添霸霸
白添霸霸
9月9日
精简版安装后在控制面板不显示
小高网
小高网
9月8日
控制面板卸载不了吗
白添霸霸
白添霸霸
9月8日
大佬,安装以后有些软件打不开了,例如CCleaner 7,提示WebView2 Runtime 初始化失败(错误:0x80070002),重装完整版提示安装时出
1
1
8月31日
就是不能处理已安装软件
小高网

小高网管理员

小高网www.xx8g.com

本月创作热力图