2025年12月8日星期一

网易云签到任务脚本

1.购买服务器阿里云:服务器购买地址https://t.aliyun.com/U/Bg6shY若失效,可用地址

1.购买服务器

阿里云:

服务器购买地址

https://t.aliyun.com/U/Bg6shY

若失效,可用地址

https://www.aliyun.com/daily-act/ecs/activity_selection?source=5176.29345612&userCode=49hts92d

腾讯云:

https://curl.qcloud.com/wJpWmSfU

若失效,可用地址

https://cloud.tencent.com/act/cps/redirect?redirect=2446&cps_key=ad201ee2ef3b771157f72ee5464b1fea&from=console

华为云

https://activity.huaweicloud.com/cps.html?fromacct=64b5cf7cc11b4840bb4ed2ea0b2f4468&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=201905

2.部署教程

2024年最新青龙面板跑脚本教程(一)持续更新中

3.代码如下

return new Promise(async (resolve, reject) => {    try {        // 封装电脑签到请求函数 (模仿正常脚本的写法)        const sign = () => {            return new Promise((resolve, reject) => {                const url = `https://music.163.com/api/point/dailyTask?type=1` ;                GM_xmlhttpRequest({                    method"GET",                    url: url,                    withCredentialstrue// 关键:携带 Cookie                    headers: {                        "User-Agent""Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",                        "Referer""https://music.163.com/"                    },                    onloadfunction (response) {                        if (response.status >= 200 && response.status < 300) {                            try {                                const data = JSON.parse(response.responseText);                                resolve(data);                            } catch (e) {                                reject(new Error(`解析响应失败: ${e.message}`));                            }                        } else {                            reject(new Error(`HTTP请求失败: ${response.status}${response.statusText}`));                        }                    },                    onerrorfunction (error) {                        reject(new Error(`网络请求失败: ${error}`));                    },                    ontimeoutfunction () {                        reject(new Error('请求超时'));                    },                    timeout10000 // 10秒超时                });            });        };        // 执行电脑签到        const pc = await sign();        // 构造通知信息        // 网易云API返回的 code: 200 表示成功, -2 表示已签到        const msg = (pc.code === 200 || pc.code === -2)            ? `网易云电脑签到成功!(${pc.msg || pc.code})`            : `网易云电脑签到失败:${pc.msg || pc.code}`;        // 打印日志        console.log(msg);        // 弹出通知        GM_notification({            title"网易云电脑签到",            text: msg,            timeout5000        });        resolve(msg);    } catch (err) {        const errorMsg = `网易云电脑签到出错: ${err.toString()}`;        GM_notification({            title"签到失败",            text: errorMsg,            timeout5000        });        console.error(errorMsg);        reject(err);    }});
解析

这是网易云签到脚本,主要作用如下:

  • 通过 GM_xmlhttpRequest 携带浏览器 Cookie 调用网易云的签到接口;

  • 根据接口返回结果判断:

    • code === 200:签到成功;

    • code === -2:今天已经签过了;

  • 最后用 GM_notification 弹出一个桌面提示,顺便 console.log 一条日志。

主要作用

1. 最外层 return new Promise(async (resolve, reject) => { ... })

作用:

  • 整个油猴脚本本身就是一个 Promise:

    • 成功时 resolve(消息文本)

    • 出错时 reject(err)

  • 方便在 定时任务中统一拿到执行结果。

2. 内部函数 const sign = () => { ... }

作用:

封装"电脑端签到请求"这一动作,返回一个 Promise,resolve 为接口返回的 JSON。

逻辑上做的事情:

  • 向 https://music.163.com/api/point/dailyTask?type=1 发送 GET 请求

  • 设置 withCredentials: true,确保携带当前域下的 Cookie(也就是你登录网易云的身份凭证);

  • 收到响应后:

    • 状态码 2xx:尝试 JSON.parse 解析结果,并 resolve;

    • 其他状态码 / 解析错误 / 网络错误 / 超时:reject 对应的错误。

可以理解为:"包了一层网易云 PC 签到接口调用"

3. const pc = await sign(); + 消息拼装

作用:

  1. 真正执行一次 电脑端签到

  2. 根据 pc.code 生成一条人类可读的描述信息:

    • 200 或 -2 ⇒ 认为是「成功/已签过」,提示文案走"成功"分支;

    • 其他 code ⇒ 走"失败"分支。

4. GM_notification({...})

作用:

把签到结果以桌面通知的形式弹出来,方便你不打开控制台也能知道签到情况。

参数包含:

  • title:固定写「网易云电脑签到」或者「签到失败」;

  • text:上一段构造好的 msg 或错误信息;

  • timeout:通知显示时长。

5. try / catch 整体错误处理

作用:

  • try 里是正常流程:调用 sign() → 解析结果 → 打日志 → 发通知 → resolve

  • catch 捕获任何异常:

    • 打印错误日志;

    • 用 GM_notification 提示「签到出错」;

    • 调用 reject(err) 结束 Promise。


注意

本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。技术层面需要提供帮助,可以通过打赏的方式进行探讨。


历史脚本txt文件获取>>
服务器搭建,人工服务咨询>>

没有评论:

发表评论

香港渣打凭什么成为内地人开户首选之一?它是高净值、中产阶层青睐的银行!

在全球化的浪潮中,国际银行账户的重要性日益凸显。渣打作为香港三大发钞行,不仅网点覆盖全香港、系统稳定、跨境服务成熟。 在全球化的浪潮中,国际银行账户的重要性日益凸显。 渣打 作为香港三大发钞行,不仅网点覆盖全香港、系统稳定、跨境服务成熟。而且和香港保险、港股、海外理财的兼容性...