[Alibaba Cloud Disk] 毎日の自動チェックイン、展開不要、サーバー不要

1. Web バージョンの Kingsoft ドキュメントを入力します。

https://www.kdocs.cn/ _

2. 新しい空のフォームを作成し、[効率化] - [高度な開発] - [AirScript スクリプト エディター] をクリックします。

ここに画像の説明を挿入

3. [スクリプトの作成]-[文書共有スクリプト]をクリックします。

ここに画像の説明を挿入

4. 作成が成功したら、適当に名前を付けます。ここでは「Aliyun ディスク サインイン」と名前を付けます。

ここに画像の説明を挿入

5.【サービス】-【サービスの追加】をクリックします。

ここに画像の説明を挿入

6. 3 つのサービスをすべて追加します

ここに画像の説明を挿入

7. 次のコードをエディタにコピーします。

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: "[email protected]", // 邮箱地址
      password: "QADSEMPKDHDAVWVD", // 邮箱的SMTP密码,非密码
      secure: true
});
  mailer.send({
    
    
          from: "阿里云盘签到<[email protected]>", // 发件人
          to: jsyx, // 收件人
          subject: "阿里云盘签到通知-"+data_time, // 主题
          text: value, // 文本
      })
}else{
    
    
  console.log(value)
}

8. ブラウザからrefresh_tokenの値を取得します。ブラウザでAlibaba Cloud Diskにログインします。

ここに画像の説明を挿入

9.refresh_token 値をテーブルにコピーします。(A2 ~ A20) は複数のアカウント トークンを書き込むことができます

ここに画像の説明を挿入

10. 報酬を受け取るかどうかをフォームに入力します (「はい」の場合は、サインイン報酬を自動的に受け取ります。そうでない場合は、サインインのみを行い、必要なときにサインイン報酬を手動で受け取ることができます)。電子メール通知を送信するかどうか、電子メール通知を送信する場合は、受信メールボックスのアドレスに書く必要があります、送信しない場合は書かないでください、正しい位置に注意してください、編集後は忘れずに保存してくださいフォーム。

ここに画像の説明を挿入

11. スクリプト内で、上の[保存]ボタンをクリックし、[実行]ボタンをクリックします。

ここに画像の説明を挿入

12. コード編集ボックスを閉じ、[効率] - [高度な開発] - [時限タスク] をクリックします。

ここに画像の説明を挿入

13. [タスクの作成] をクリックして毎日の実行時間を設定し、選択したスクリプトを選択して保存すれば完了です

ここに画像の説明を挿入

14. スクリプトで独自のメールボックスと SMTP プロトコルを設定できます

15.効果

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/ihero/article/details/131627785