本教程介绍了如何通过金山文档网页版实现阿里云盘每日自动签到功能。
一、访问金山文档
进入金山文档网页版: https://www.kdocs.cn/。
二、创建空表格和脚本
随便新建一个空表格,点击【效率】-【高级开发】-【AirScript脚本编辑器】:
点击【创建脚本】-【文档共享脚本】
点击【服务】-【添加服务】,依次将三个服务全部添加
三、编辑脚本
将以下代码复制到编辑器中:
var myDate = new Date();
var data_time = myDate.toLocaleDateString()
function sleep(d){
for(var t = Date.now();Date.now() - t <= d;);
}
var value= ""
for (let ii = 2; ii <= 20; ii++){
dyg = "A"+ii
var refresh_token = Application.Range(dyg).Text
if(refresh_token != ""){
// 发起网络请求-获取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){
var value ="单元格【"+dyg+"】内的token值错误,程序执行失败,请重新复制正确的token值"+"\n"
}else{
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()
var signin_count = data2['result']['signInCount']
var value =value+ "账号:"+data["user_name"]+"-签到成功, 本月累计签到"+ signin_count+"天"+"\n"
}catch{
var value ="单元格【"+dyg+"】内的token签到失败"+"\n"
return
}
sleep(1000)
var sflq = Application.Range("B"+ii).Text
if (sflq == "是"){
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()
var value = value +"本次签到获得"+data3["result"]["name"] +","+data3["result"]["description"]+"\n"
}catch{
var value = value+ "账号:"+data["user_name"]+"-领取奖励失败"+"\n"
}
}else{
value = value +"奖励待领取"+"\n"
}
}
}
}
var sftz = Application.Range("E"+1).Text
if (sftz=="是"){
var jsyx = Application.Range("E"+2).Text
// 配置发送邮箱
let mailer = SMTP.login({
host: "smtp.163.com", // 邮箱 的SMTP服务器的域名
port: 465,
username: "fs8484848@163.com"", // 邮箱地址
password: "QADSEMPKDHDAVWVD", // 邮箱的SMTP密码,非密码
secure: true
});
mailer.send({
from: "阿里云盘签到<fs8484848@163.com>", // 发件人
to: jsyx, // 收件人
subject: "阿里云盘签到通知-"+data_time, // 主题
text: value, // 文本
})
}else{
console.log(value)
}
修改上面的内容,比如邮箱信息:
- 发件人(同邮箱地址);
- SMTP;
- 邮箱地址;
- SMTP密码;
四、从浏览器里获取refresh_token并填入表格
五、将refresh_token 的值复制到表格中,(A2-A20)可以写入多个账号的token
表格中填写是否领取奖励(是的话会自动领取签到奖励,为否的话只签到,需要用的时候自己手动领取签到奖励)、是否发送邮箱通知,发送邮箱通知的话,要写入接收邮箱的地址,不发送就不用写,注意位置要写对,编辑完表格后记得保存。
六、运行脚本
脚本中,点击上方的【保存】按钮,再点击【运行】按钮。
确认出现“执行完毕”字样,否则看提示是密码不对或其他错误信息。
七、添加定时
关闭代码编辑框,点击【效率】-【高级开发】-【定时任务】
八、邮箱验证
在你表格邮箱提醒里对应的邮箱里会收到如下签到信息:
smtp 哪里来密码啊!~?这个密码好像没有的
一般邮箱有登录密码,还有专用密码,gmail,微信企业邮箱之类的都是这样的,在设置里。gmail的参考这里:https://www.yomige.org/1215.html 。我试了,gmail提示连接超时,你可以试试国内邮箱。
现在是share_token 参数变了
我今天试着可以,哪里用到share_token了?
大佬,请问第三步除了改你说的邮箱内容,还要改哪些东西呀
用上了很不错,谢谢分享.
73行多了一个 "