吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 21077|回复: 581
收起左侧

[其他转载] 阿里云盘在线自动签到-无需部署-2023-12-10

    [复制链接]
qike2391 发表于 2023-12-10 20:48
本帖最后由 qike2391 于 2023-12-15 10:00 编辑

声明:本文的代码内容来源于知乎用户小猪猪艾欧娜传播此内容是基于学术研究和学习目的,遵循了适用的版权规定和学术研究的合理使用原则。


  • 作者只对源代码进行了一点点改动,本文主要演示如何使用金山文档的每日定时任务,执行阿里云盘签到接口。
  • 第一版本发布至今已经近五个月了,这段时间一直忙于学业,未能及时更新。
  • 在查看了120页的评论后,大多数人都已经成功地部署了。
  • 评论中许多人提到了Pushplus和Serverchan推送,以及青龙面板等各种思路和水友们在使用过程中遇到的困难。
  • 感谢大家的反馈和支持,让这个项目更加完善和易用。

--------------------------------------------------------------------------------------------------------------------------

更新内容:
1.取消邮箱通知
原因:

  • 用户查看不方便,
  • 对初学者来说配置邮箱难
  • 反复发送雷同信息会被系统判定为垃圾邮件而封禁邮箱
  • 尊敬的网易邮箱用户:您好, 经系统监测发现您的帐号(xxx)触犯了禁止发信的规则,已于 2023-08-01 09:47:00 被禁止使用网页版网易邮箱......

2.改为PushPlus、Serverchan推送,
原因:

  • 配置简单,微信常用,查看方便


3.新增获取token时间大于25天提醒更换token
原因:
  • token有限期一般为一个月
  • 增加此功能可以更直观的知道token获取到的天数
  • 方便及时更新token


4.从原先预留二十个账号槽位减少为十个账号槽
原因:
  • 一般用户基本都是两个账号或以上
  • 太多空槽位只会增加空跑时间



规划中:
1.增加身份ID,实现多账号合并推送
原因:
  • 减少多信息带来的打扰
  • 功能介绍:当两个账号填写一个ID默认将签到内容合并,前提是推送token不为空且推送渠道相同,不同则分开发送



疑问:
1.为什么不更改为模拟登录直接自动获取token
原因:

  • 自动获取 refresh_token 的流程涉及到模拟登录、使用用户名密码安全性和合法性
  • 自动化模拟登录网站的行为违反网站的使用条款
  • 没有官方 API 授权方式的情况下直接模拟登录可能会导致账户被封禁
  • 为了用户的安全体验所以取消



我们要做的是简单易上手,而不是繁杂的步骤让用户看不懂、操作麻烦。


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

闲话少叙,开始教学

对原有步骤再次简化


第一步:
打开签到模版,【另存】到自己账号
模版:https://kdocs.cn/l/cqn1V8kRnGQx

Snipaste_2023-12-11_10-51-12.png

第二步:
点击【效率】-【高级开发】-【AirScript脚本编辑器】

Snipaste_2023-12-10_16-15-43.png

查看脚本中是否有代码
如没有将下方代码粘贴到红框处并保存


Snipaste_2023-12-11_11-08-47.png

[JavaScript] 纯文本查看 复制代码
var myDate = new Date(); // 创建一个表示当前时间的 Date 对象
var data_time = myDate.toLocaleDateString(); // 获取当前日期的字符串表示

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 = "G"; // 设置列号变量为 "G"

for (let row = 1; row <= 10; 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; // 获取指定单元格的值

if (refresh_token != "") { // 如果刷新令牌不为空
   if (qiandao == "是") {//签到&领奖开关
      //获取Bearer-token
      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; // 跳过当前行的后续操作()
            }
      Time.sleep(3000)      
      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"]; // 获取奖励描述
              console.log(result4)
              }catch (error) {
               console.log("单元格【" + tokenColumn + row + "】领奖出错,请手动确认");
               continue; // 跳过当前行的后续操作()
              }

var loginnotice ="" //25天登陆提醒
  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 >2160000000){//时间差单位毫秒
      var loginnotice = "登录已超25天注意token失效";
    }
}


      //推送
if (servertoken !== '' && push == "Serverchan") {//serverchan通道推送
    const urls = "https://sctapi.ftqq.com/" + servertoken + ".send"
    let response = HTTP.post(
        urls,
        {
         title: result1,
         desp: ''+result2+'\n\n'+result4+'\n\n'+loginnotice+'',
        },
        {
            headers: {
                "Content-Type": "application/json",
            },
            timeout: 60000, // 设置超时时间
        }
    );
    // 打印推送结果
    console.log(response.text());
}

if (pushtoken !== '' && push == "Pushplus") {//pushplus通道推送
    const urlp = "http://www.pushplus.plus/send"
    let response = HTTP.post(
        urlp,
        {
            "token": pushtoken,
            "title": "阿里云盘-签到通知",
            "content": '' + result1 + '\n' + result2 + '\n' + result4 + '\n' + loginnotice + '',
            "channel": "wechat",
            "template": "html"
        },
        {
            headers: {
                "Content-Type": "application/json",
            },
            timeout: 60000, // 设置超时时间
        }
    );
    // 打印推送结果
    console.log(response.text());
}
}
}
//无有效token
}


第三步:
检查【云文档API】-【网络API】是否存在
Snipaste_2023-12-11_11-14-17.png

如没有
1.点击添加服务授权

2.添加【云文档API】-【网络API】

Snipaste_2023-12-10_16-22-56.png

第四步:
获取阿里云盘token
阿里云盘:https://www.aliyundrive.com/

Snipaste_2023-12-10_16-32-20.png


方法一:
控制台获取

Snipaste_2023-12-10_16-39-51.png


将命令粘贴到【控制台】-【回车】

[JavaScript] 纯文本查看 复制代码
copy(JSON.parse(localStorage.token).refresh_token); console.log(JSON.parse(localStorage.token).refresh_token);


Snipaste_2023-12-15_09-53-29.png

将获取到的token粘贴到【A1】单元格
顺便将token获取时间填入,不填当token大于25天不提醒

Snipaste_2023-12-10_20-13-44.png


方法二:
1.点击获取token
2.使用阿里云盘APP扫码
3.将出现的token复制到表格相应位置
链接:https://alist.nn.ci/zh/guide/drivers/aliyundrive.html#%E5%88%B7%E6%96%B0%E4%BB%A4%E7%89%8C

Snipaste_2023-12-10_17-17-12.png


第五步:
获取pushplus和Serverchan的token
两个选择一个即可,推荐pushplus

Snipaste_2023-12-10_17-04-14.png


第一种:
pushplus-扫码登录
pushplus:https://www.pushplus.plus/

Snipaste_2023-12-10_16-49-31.png

点击【发送消息】-【一对一消息】

Snipaste_2023-12-10_16-51-43.png

将生成的token【一键复制】

Snipaste_2023-12-10_16-53-22.png

复制到【D1】单元格

Snipaste_2023-12-10_20-01-52.png

第二种
Serverchan-扫码登录
Serverchan:https://sct.ftqq.com/

Snipaste_2023-12-06_16-13-26.png

复制获取到的token

Snipaste_2023-12-06_16-14-49.png

复制到相应单元格

Snipaste_2023-12-10_20-06-01.png

第六步:
1.配置成图中这样就算配置好了
2.【C列】和【D列】只需要配置一个即可
3.但需要和【E列】推送渠道保持一致否者无法推送
4.【F列】为身份ID列,默认情况下每行推送一次,如 [F1] [F2] 单元格内容一致都为A那么签到内容将合并为一条推送,减少打扰。前提是推送渠道和推送token相同(规划中

Snipaste_2023-12-10_17-14-54.png


第七步:
1.点回到脚本页面
2.点击三角运行按钮
3.查看日志以及公众号是否推送成功

Snipaste_2023-12-10_17-19-31.png

运行成功后的日志

Snipaste_2023-12-10_17-24-09.png

手机微信端效果

Snipaste_2023-12-10_17-25-20.png

详情页面
获取token时长大于25天将增加一条提醒更换token

Snipaste_2023-12-10_17-26-51.png


最后一步
点击【高级功能】-【定时任务】

Snipaste_2023-12-10_17-28-22.png

创建任务
创建为【每天】将脚本设置为最开始创建的名称


Snipaste_2023-12-10_17-33-50.png

--------------------------------------------------------------------------------------------------------------------------
青龙面板支持:https://github.com/mrabit/aliyundriveDailyCheck
--------------------------------------------------------------------------------------------------------------------------
再次感谢艾欧娜的源码
更多模版请看https://www.kdocs.cn/l/cj8tjHptRYdY

--------------------------------------------------------------------------------------------------------------------------
创作不易,点个赞再走呗!
--------------------------------------------------------------------------------------------------------------------------
配置过程中可能遇到的问题
1.问:配置完成,运行脚本出现{"code":999,"msg":"所在IP:120.92.xx.xxx禁止访问","data":null}
   答:切换网络再次运行或过会在尝试
Snipaste_2023-12-11_11-30-12.png

2.问:网页要一直开着吗?
   答:配置完后关闭相关页面即可


3.问:电脑要一直开着吗?
   答:不需要

4.问:第一个配置好了,如何配置第二个
   答:相同方法,除了阿里云盘token需要获取对应账号的其他保持不变即可(但需要每行都填写)
Snipaste_2023-12-11_11-41-10.png

5. 问:推送的消息哪里查看
    答:pushplus:关注pushplus推送加
           ServerChan:关注方糖

Snipaste_2023-12-15_09-36-19.png



这是目前在配置过程中用户可能遇到的问题,如有其他疑问欢迎留言!

点评

pushplus提示ip禁止访问,按楼下说的改https也不行咋办?  发表于 2023-12-14 09:35
美中不足的是APP上门可以领取两种签到脚本只领取了1个,另一个没领取,已关注希望持续更新  发表于 2023-12-13 10:39

免费评分

参与人数 279吾爱币 +281 热心值 +252 收起 理由
zukxu + 1 + 1 用心讨论,共获提升!
ForGot_227 + 1 谢谢@Thanks!
天之鹏 + 1 + 1 谢谢@Thanks!
whxcjyrc + 1 + 1 热心回复!
amagia + 1 + 1 非常感谢,省去不少签到时间,也不怕忘记签到了
MOJIANXUN + 1 + 1 鼓励转贴优秀软件安全工具和文档!
Jack150 + 1 谢谢@Thanks!
fisherpau + 1 + 1 用心讨论,共获提升!
Duke0910 + 1 + 1 谢谢@Thanks!
wapj314159 + 1 + 1 我很赞同!
BuShiNaMeDe + 1 + 1 热心回复!
kuangtian_2000 + 1 + 1 我很赞同!
CX33019 + 1 + 1 我很赞同!
xnink + 1 谢谢@Thanks!
rip + 1 + 1 我很赞同!
mankou + 1 + 1 谢谢@Thanks!
kofkyo + 1 + 1 谢谢@Thanks!
week + 1 + 1 小白也能轻松配置!好评/upup
yud + 1 + 1 我很赞同!
yxsky + 1 + 1 谢谢@Thanks!
15936635124 + 1 + 1 谢谢@Thanks!
wakealine + 1 + 1 谢谢@Thanks!
gccfxz + 1 + 1 用心讨论,共获提升!
ogn + 1 + 1 谢谢@Thanks!
abc7940 + 1 + 1 谢谢@Thanks!
AiChiShuCai + 1 + 1 谢谢@Thanks!
myoudk + 1 + 1 我很赞同!
winyee + 1 + 1 我很赞同!
52菜鸟 + 1 鼓励转贴优秀软件安全工具和文档!
xmfx1314 + 1 + 1 我很赞同!
aikexue + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
unice + 1 + 1 谢谢@Thanks!
china100 + 1 + 1 我很赞同!
fightx + 1 + 1 用心讨论,共获提升!
yayale49 + 1 + 1 谢谢@Thanks!
heao1996 + 1 + 1 谢谢@Thanks!
yu0891 + 1 + 1 谢谢@Thanks!
xiaomr1990 + 1 + 1 谢谢@Thanks!
ikunkunkun + 1 + 1 谢谢@Thanks!
坐久落花多 + 1 + 1 什么值得买/卡饭论坛/数码之家/远景论坛/V2EX/百度贴吧 自动签到是不是也可.
kongweixu + 1 + 1 谢谢@Thanks!
bluewatercom + 1 + 1 我很赞同!
wj18235894766 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
gun008 + 1 + 1 我很赞同!
liu199192 + 1 我很赞同!
瑟瑟深秋 + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
jjjyyy888 + 1 + 1 谢谢@Thanks!
malong0007 + 1 + 1 我很赞同!
nyy0431 + 1 谢谢@Thanks!
zjty123 + 1 + 1 谢谢@Thanks!
jason韶华 + 1 + 1 谢谢@Thanks!
abc2018zh + 1 + 1 感谢分享实用贴
towy007 + 1 + 1 谢谢@Thanks!
louchen94 + 1 + 1 我很赞同!
Angel23880 + 1 谢谢@Thanks!
liuxt0556 + 1 谢谢@Thanks!
beibeibei + 1 + 1 我很赞同!
ekobe1796 + 1 谢谢@Thanks!
默罕默德三打哈 + 1 + 1 谢谢@Thanks!
tevins + 1 用心讨论,共获提升!
niwdwyjj + 1 谢谢@Thanks!
shinvane + 1 + 1 我很赞同!
大大怪and小小怪 + 1 我很赞同!
momochong0 + 1 + 1 谢谢@Thanks!
fhtx + 1 + 1 谢谢@Thanks!
DUDU666 + 1 + 1 谢谢@Thanks!
bingo99 + 1 + 1 谢谢@Thanks!
lsdxz + 1 + 1 我很赞同!
侃遍天下无二人 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
beicheng + 1 + 1 谢谢@Thanks!
rlaals0212 + 1 + 1 谢谢@Thanks!
Jupiter999 + 1 + 1 谢谢@Thanks!
GS9452 + 1 热心回复!
hualy + 1 + 1 我很赞同!
niejiong88 + 1 我很赞同!
shenzhouruoyi + 1 + 1 谢谢@Thanks!
z89225127 + 1 + 1 就佩服楼主这样无私奉献的人!
23sui + 1 + 1 谢谢@Thanks!
Jioccer + 1 + 1 我很赞同!
nb99 + 1 + 1 谢谢@Thanks!
AK123 + 1 + 1 感谢作者,清晰明朗,已经成功
辰梦 + 1 + 1 谢谢@Thanks!
netmankind + 1 + 1 谢谢@Thanks!
jiafei5331 + 1 + 1 我很赞同!
lsaigs + 1 + 1 谢谢@Thanks!
hongping2016 + 1 + 1 谢谢@Thanks!
我是神的亲戚 + 1 + 1 谢谢@Thanks!
lyqs + 1 + 1 谢谢@Thanks!
我马上过去 + 1 有没有WPS签到的
4477k + 1 + 1 谢谢@Thanks!
极域飞仙 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
zzoo159 + 1 + 1 支持 教程很简单
ASDasd641116 + 1 + 1 我很赞同!
花水萧白 + 1 + 1 谢谢@Thanks!请尽快更新你的token,已泄露
happynews001 + 1 谢谢@Thanks!
samen + 1 + 1 谢谢@Thanks! 佩服你们的脑子,真的太好使了。
qingfeng1214 + 1 + 1 谢谢@Thanks!
weiai987 + 1 用心讨论,共获提升!
aa3791818 + 2 + 1 鼓励转贴优秀软件安全工具和文档!
wddddd + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

侃遍天下无二人 发表于 2023-12-14 20:13
我把脚本修改了一下,可以自动更新refresh_token了,我觉得这个应该不算模拟登录,就是那旧的token换新的而已,跟前面的post操作没啥本质区别
[JavaScript] 纯文本查看 复制代码
var myDate = new Date(); // 创建一个表示当前时间的 Date 对象
var data_time = myDate.toLocaleDateString(); // 获取当前日期的字符串表示

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 = "G"; // 设置列号变量为 "G"

for (let row = 1; row <= 10; 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; // 获取指定单元格的值

  if (refresh_token != "") { // 如果刷新令牌不为空
    if (qiandao == "是") {//签到&领奖开关
      //获取Bearer-token
      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; // 跳过当前行的后续操作()
      }
      Time.sleep(3000)
      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"]; // 获取奖励描述
        console.log(result4)
      } catch (error) {
        console.log("单元格【" + tokenColumn + row + "】领奖出错,请手动确认");
        continue; // 跳过当前行的后续操作()
      }

      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: '' + result2 + '\n\n' + result4 + '\n\n' + loginnotice + '',
          },
          {
            headers: {
              "Content-Type": "application/json",
            },
            timeout: 60000, // 设置超时时间
          }
        );
        // 打印推送结果
        console.log(response.text());
      }

      if (pushtoken !== '' && push == "Pushplus") {//pushplus通道推送
        const urlp = "http://www.pushplus.plus/send"
        let response = HTTP.post(
          urlp,
          {
            "token": pushtoken,
            "title": "阿里云盘-签到通知",
            "content": '' + result1 + '\n' + result2 + '\n' + result4 + '\n' + loginnotice + '',
            "channel": "wechat",
            "template": "html"
          },
          {
            headers: {
              "Content-Type": "application/json",
            },
            timeout: 60000, // 设置超时时间
          }
        );
        // 打印推送结果
        console.log(response.text());
      }
    }
  }
  //无有效token
}

免费评分

参与人数 8吾爱币 +7 热心值 +8 收起 理由
Jack150 + 1 谢谢@Thanks!
abc2018zh + 1 + 1 我很赞同!
netmankind + 1 + 1 谢谢@Thanks!
fzhhn + 1 + 1 用心讨论,共获提升!
宅友 + 1 + 1 谢谢 @Thanks!
52菜鸟 + 1 + 1 高级
abc7940 + 1 + 1 谢谢@Thanks!
zjty123 + 1 + 1 谢谢@Thanks!

查看全部评分

Difenidol 发表于 2023-12-12 09:48
感谢分享,3个号都成功了,但是pushplus没有通知,提示IP禁止访问,看了一下代码,pushplus通道推送那里,网址http改为https就可以了
10001 发表于 2023-12-13 08:17
KevinzK1 发表于 2023-12-14 23:44
宅友 发表于 2023-12-14 21:42
copy(JSON.parse(localStorage.token).refresh_token); console.log(JSON.parse(localStorage.token).refre ...

你看下提示,人家让你输入allow pasting来同意复制粘贴,你手动输入一下allow pasting就好了

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
宅友 + 1 + 1 谢谢 @Thanks!

查看全部评分

shadmmd 发表于 2023-12-11 10:30
可以直接把模板另存到自己的账号
a2006121 发表于 2023-12-14 22:33
宅友 发表于 2023-12-14 21:42
copy(JSON.parse(localStorage.token).refresh_token); console.log(JSON.parse(localStorage.token).refre ...

allow pasting
手动输入

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
宅友 + 1 + 1 谢谢 @Thanks!

查看全部评分

花下客 发表于 2023-12-14 16:40
楼主说得很详细,小白抄作业,看似成功,但也不知道是不是成功了。弱弱地问一下,消息推送到哪里查看?微信吗?要关注公众号还是?
宅友 发表于 2023-12-14 21:42
copy(JSON.parse(localStorage.token).refresh_token); console.log(JSON.parse(localStorage.token).refresh_token);
这个复制不进去,弄不到
happynews001 发表于 2023-12-14 10:12
谢谢楼主的分享,辛苦你了
TenSir152 发表于 2024-4-21 13:48
很赞的一个功能,感谢感谢
LunarEcho 发表于 2024-4-21 09:06
配置好了,感谢大佬
sunjianxin33 发表于 2024-3-31 23:34
谢谢楼主的分享,辛苦你了
wzdc 发表于 2024-3-27 00:27
感谢大佬
可惜阿里云盘永久容量太少了,新用户注册估计只有100G永久容量,签到也只有几十MB限时容量
好像是阿里云盘搞了限时容量后国内网盘才纷纷开始效仿的吧
shadowless520 发表于 2024-3-20 10:14
很详细,很实用,感谢楼主,不知道现在还能用吗?
 楼主| qike2391 发表于 2024-3-20 10:09
派大星丶 发表于 2024-3-19 19:48
感谢, 两个账户分了两个公众号  都成功了,  再问一下,两个账号能用一个token吗?

不可以,token相当于每个人的身份证号码,感兴趣的话可以看看评论区大佬修改的自动更新token,本人亲测非常好使,实现一次部署长期有效
派大星丶 发表于 2024-3-19 19:48
感谢, 两个账户分了两个公众号  都成功了,  再问一下,两个账号能用一个token吗?
dieoj 发表于 2024-3-18 17:30
感谢感谢&#128591;
tingyuli520 发表于 2024-3-18 10:34
运行成功,用的pushplus
张油条 发表于 2024-3-5 12:57
抄作业成功,感谢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-3 22:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表