阿里云盘自动签到
先分享下我写的shell脚本吧,有服务器的小伙伴可以直接部署到自己的服务器上,弄一个定时任务即可。
#!/bin/bash
#需要每月更新一次
refresh_token="09979e3825de4756"
##获取access_token
access_token_command="curl --location --request POST 'https://auth.aliyundrive.com/v2/account/token' --header 'Content-Type: application/json' --data '{
\"grant_type\": \"refresh_token\",
\"refresh_token\": \"$refresh_token\"
}' | jq '.access_token' | sed 's/\"//g'";
access_token=`eval $access_token_command`
if [ "$access_token" = "null" ];
then echo "refresh_token失效,请更换"
else
sleep 2
##自动签到
header="Authorization: $access_token";sign_command="curl --location --request POST 'https://member.aliyundrive.com/v1/activity/sign_in_list' --header '$header' --header 'Content-Type: application/json' --data '{\"_rx-s\":\"mobile\"}'"
sign_in_count=`eval $sign_command | jq '.result.signInCount'`
sleep 2
##领取奖励
reward_command="curl --location --request POST 'https://member.aliyundrive.com/v1/activity/sign_in_reward?_rx-s=mobile' \
--header '$header' \
--header 'Content-Type: application/json' \
--data '{
\"signInDay\": \"$sign_in_count\"
}'"
notice=`eval $reward_command | jq '.result.notice'`
echo "签到成功,你已经签到$sign_in_count次,本次签到奖励————$notice"
fi
使用的时候只需要更改你的refresh_token
即可。
refresh_token获取
阿里云盘:阿里云盘 (aliyundrive.com)
首先需要登录阿里云盘,登陆后按F12
打开面板,找到应用程序
->Local storage
->https://www.aliyundrive.com
->token
->refresh_token
。
把这个refresh_token
填到脚本里即可。
由于脚本调用了jq
来解析json数据,所以在脚本使用之前需要yum install -y jq
安装一下jq。
运行效果如下:
原理
从脚本里就不能看出来只是调用了几个阿里云盘的api。
https://auth.aliyundrive.com/v2/account/token
,这个是获取access_token
的接口,有了access_token我们才能签到和领取奖励。
https://member.aliyundrive.com/v1/activity/sign_in_list
,这个是签到接口
https://member.aliyundrive.com/v1/activity/sign_in_reward?_rx-s=mobile
,这个是领取奖励接口
没有回复内容