|
|
@@ -203,58 +203,58 @@ async function signBiliBili() {
|
|
|
break;
|
|
|
} else {
|
|
|
await coin();
|
|
|
- await magicJS.utils.sleep(300) //减少频繁请求概率
|
|
|
+ await magicJS.utils.sleep(300); //减少频繁请求概率
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- magicJS.logger.info("---- 将尝试额外任务")
|
|
|
+ magicJS.logger.info("---- 将尝试额外任务");
|
|
|
} else {
|
|
|
- magicJS.logger.info("---- 经验值任务均已完成,将尝试额外任务")
|
|
|
+ magicJS.logger.info("---- 经验值任务均已完成,将尝试额外任务");
|
|
|
}
|
|
|
|
|
|
- await liveSign()
|
|
|
- await silver2coin()
|
|
|
- await vipScoreSign()
|
|
|
+ await liveSign();
|
|
|
+ await silver2coin();
|
|
|
+ await vipScoreSign();
|
|
|
if (config.user.vipStatus === 1) {
|
|
|
- await vipExtraEx()
|
|
|
- await vipScoreGo()
|
|
|
- await vipScoreFan()
|
|
|
- await vipScoreMovie()
|
|
|
- await vipScoreDress()
|
|
|
- await vipWatchAccept()
|
|
|
+ await vipExtraEx();
|
|
|
+ await vipScoreGo();
|
|
|
+ await vipScoreFan();
|
|
|
+ await vipScoreMovie();
|
|
|
+ await vipScoreDress();
|
|
|
+ await vipWatchAccept();
|
|
|
//B币券每月尝试两次领取
|
|
|
let day = magicJS.utils.formatTime(new Date(), 'dd');
|
|
|
if (day === '1' || day === '15') {
|
|
|
if (config.user.vipType === 2) {
|
|
|
- await vipPrivilege(1)
|
|
|
- await magicJS.utils.sleep(800) //延迟执行,防止领劵延迟
|
|
|
- let charge_mid = config.Settings?.charge_mid || config.user.mid //用户设置充电id
|
|
|
- let bp_num = config.Settings?.bp_num || 5 //用户设置充电数量
|
|
|
- await Charge(charge_mid, bp_num)//充电
|
|
|
- for (let i = 2; i <= 7; i++) await vipPrivilege(i)
|
|
|
+ await vipPrivilege(1);
|
|
|
+ await magicJS.utils.sleep(800); //延迟执行,防止领劵延迟
|
|
|
+ let charge_mid = config.Settings?.charge_mid || config.user.mid; //用户设置充电id
|
|
|
+ let bp_num = config.Settings?.bp_num || 5; //用户设置充电数量
|
|
|
+ await Charge(charge_mid, bp_num);//充电
|
|
|
+ for (let i = 2; i <= 7; i++) await vipPrivilege(i);
|
|
|
} else if (config.user.vipType === 1) {
|
|
|
- await vipPrivilege(6)
|
|
|
- await vipPrivilege(7)
|
|
|
+ await vipPrivilege(6);
|
|
|
+ await vipPrivilege(7);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- flag = !isFlag(exec_times)
|
|
|
- let title = `登录${config.user.num}/观看${config.watch.num}/分享${config.share.num}/投币${config.coins.num / 10}${flag ? "已完成" : "未完成"}`
|
|
|
- magicJS.logger.info(`#### ${title}`)
|
|
|
- magicJS.logger.info(`- 登录时间: ${config.user.time || "暂无"}`)
|
|
|
- magicJS.logger.info(`- 观看时间: ${config.watch.time || "暂无"}`)
|
|
|
- magicJS.logger.info(`- 分享时间: ${config.share.time || "暂无"}`)
|
|
|
- magicJS.logger.info(`- 投币时间: ${config.coins.time || "暂无"}`)
|
|
|
+ flag = !isFlag(exec_times);
|
|
|
+ let title = `登录${config.user.num}/观看${config.watch.num}/分享${config.share.num}/投币${config.coins.num / 10}${flag ? "已完成" : "未完成"}`;
|
|
|
+ magicJS.logger.info(`#### ${title}`);
|
|
|
+ magicJS.logger.info(`- 登录时间: ${config.user.time || "暂无"}`);
|
|
|
+ magicJS.logger.info(`- 观看时间: ${config.watch.time || "暂无"}`);
|
|
|
+ magicJS.logger.info(`- 分享时间: ${config.share.time || "暂无"}`);
|
|
|
+ magicJS.logger.info(`- 投币时间: ${config.coins.time || "暂无"}`);
|
|
|
|
|
|
- notice = {
|
|
|
+ let notice = {
|
|
|
title: `[${config.user.uname}]`,
|
|
|
subTitle: `${flag ? "✅任务完成" : "❗️有未完成的任务"}`,
|
|
|
content:
|
|
|
`任务:登录(观看)${check("watch") ? "" : "+10exp"} 分享${check("share") ? "" : "+5exp"} 投币${check("coins") ? "" : "+50exp"}\n` +
|
|
|
`经验:当前${config.user.level_info.current_exp}/下级${config.user.level_info.next_exp}/满级28800\n` +
|
|
|
`等级:当前${config.user.level_info.current_level}级 升满级最快需${Math.ceil((config.user.v6_exp)/65)}天`,
|
|
|
- }
|
|
|
- magicJS.notification.post(notice.title, notice.subTitle, notice.content)
|
|
|
+ };
|
|
|
+ magicJS.notification.post(notice.title, notice.subTitle, notice.content);
|
|
|
} else {
|
|
|
magicJS.notification.post(`任务失败`,`📅 ${startTime}`, "🤒请更新cookie")
|
|
|
}
|
|
|
@@ -636,137 +636,140 @@ async function signBiliBili() {
|
|
|
// });
|
|
|
// }
|
|
|
|
|
|
-// async function silver2coin() {
|
|
|
-// return new Promise((resolve, reject) => {
|
|
|
-// magicJS.logger.info("#### 银瓜子兑换硬币任务");
|
|
|
-// const body = {
|
|
|
-// csrf: config.cookie.bili_jct,
|
|
|
-// csrf_token: config.cookie.bili_jct
|
|
|
-// };
|
|
|
-// const myRequest = {
|
|
|
-// url: "https://api.live.bilibili.com/xlive/revenue/v1/wallet/silver2coin",
|
|
|
-// headers: {
|
|
|
-// 'cookie': config.cookieStr
|
|
|
-// },
|
|
|
-// body: magicJS.objToQueryStr(body)
|
|
|
-// };
|
|
|
-// magicJS.http.get(myRequest).then(response => {
|
|
|
-// try {
|
|
|
-// let result = response.body;
|
|
|
-// let title = `银瓜子转硬币`;
|
|
|
-// // 兑换成功
|
|
|
-// if (result && result.code === 0) {
|
|
|
-// let subTitle = `- ${result.message}`;
|
|
|
-// let detail = `- 成功兑换: ${result.data.coin} 个硬币\n当前银瓜子: ${result.data.silver} , 当前金瓜子: ${result.data.gold}`;
|
|
|
-// magicJS.logger.info(subTitle);
|
|
|
-// magicJS.logger.info(detail);
|
|
|
-// magicJS.notification.post(title, subTitle, detail);
|
|
|
-// }
|
|
|
-// // 兑换中止(重复兑换&银瓜子不足)
|
|
|
-// else if (result && result.code === 403) {
|
|
|
-// let subTitle = "- 未成功兑换";
|
|
|
-// let detail = `- 原因: ${result.message}`;
|
|
|
-// magicJS.logger.info(subTitle);
|
|
|
-// magicJS.logger.info(detail);
|
|
|
-// magicJS.notification.post(title, subTitle, detail);
|
|
|
-// }
|
|
|
-// // 兑换失败
|
|
|
-// else {
|
|
|
-// let subTitle = "- 兑换失败";
|
|
|
-// let detail = `- 原因: ${result.message}`;
|
|
|
-// magicJS.logger.info(subTitle);
|
|
|
-// magicJS.logger.info(detail);
|
|
|
-// magicJS.notification.post(title, subTitle, detail);
|
|
|
-// }
|
|
|
-// } catch (e) {
|
|
|
-// magicJS.logger.error(e);
|
|
|
-// }
|
|
|
-// resolve();
|
|
|
-// }).catch(err => {
|
|
|
-// const msg = `兑换异常\n${JSON.stringify(err)}`;
|
|
|
-// magicJS.logger.error(msg);
|
|
|
-// reject(msg);
|
|
|
-// });
|
|
|
-// });
|
|
|
-// }
|
|
|
+async function silver2coin() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ magicJS.logger.info("#### 银瓜子兑换硬币任务");
|
|
|
+ const body = {
|
|
|
+ csrf: config.cookie.bili_jct,
|
|
|
+ csrf_token: config.cookie.bili_jct
|
|
|
+ };
|
|
|
+ const myRequest = {
|
|
|
+ url: "https://api.live.bilibili.com/xlive/revenue/v1/wallet/silver2coin",
|
|
|
+ headers: {
|
|
|
+ 'cookie': config.cookieStr
|
|
|
+ },
|
|
|
+ body: magicJS.objToQueryStr(body)
|
|
|
+ };
|
|
|
+ magicJS.http.get(myRequest).then(response => {
|
|
|
+ try {
|
|
|
+ let result = response.body;
|
|
|
+ let title = `银瓜子转硬币`;
|
|
|
+ // 兑换成功
|
|
|
+ if (result && result.code === 0) {
|
|
|
+ let subTitle = `- ${result.message}`;
|
|
|
+ let detail = `- 成功兑换: ${result.data.coin} 个硬币\n当前银瓜子: ${result.data.silver} , 当前金瓜子: ${result.data.gold}`;
|
|
|
+ magicJS.logger.info(subTitle);
|
|
|
+ magicJS.logger.info(detail);
|
|
|
+ magicJS.notification.post(title, subTitle, detail);
|
|
|
+ }
|
|
|
+ // 兑换中止(重复兑换&银瓜子不足)
|
|
|
+ else if (result && result.code === 403) {
|
|
|
+ let subTitle = "- 未成功兑换";
|
|
|
+ let detail = `- 原因: ${result.message}`;
|
|
|
+ magicJS.logger.info(subTitle);
|
|
|
+ magicJS.logger.info(detail);
|
|
|
+ magicJS.notification.post(title, subTitle, detail);
|
|
|
+ }
|
|
|
+ // 兑换失败
|
|
|
+ else {
|
|
|
+ let subTitle = "- 兑换失败";
|
|
|
+ let detail = `- 原因: ${result.message}`;
|
|
|
+ magicJS.logger.info(subTitle);
|
|
|
+ magicJS.logger.info(detail);
|
|
|
+ magicJS.notification.post(title, subTitle, detail);
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ magicJS.logger.error(e);
|
|
|
+ } finally {
|
|
|
+ resolve();
|
|
|
+ }
|
|
|
+ }).catch(err => {
|
|
|
+ const msg = `兑换异常\n${JSON.stringify(err)}`;
|
|
|
+ magicJS.logger.error(msg);
|
|
|
+ reject(msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+}
|
|
|
|
|
|
-// async function liveSign() {
|
|
|
-// return new Promise((resolve, reject) => {
|
|
|
-// magicJS.logger.info("#### 直播签到任务");
|
|
|
-// const myRequest = {
|
|
|
-// url: "https://api.live.bilibili.com/xlive/web-ucenter/v1/sign/DoSign",
|
|
|
-// headers: {
|
|
|
-// 'cookie': config.cookieStr
|
|
|
-// }
|
|
|
-// };
|
|
|
-// magicJS.http.get(myRequest).then(response => {
|
|
|
-// try {
|
|
|
-// let body = response.body;
|
|
|
-// if (body?.code === 0) {
|
|
|
-// magicJS.logger.info("- 签到成功");
|
|
|
-// magicJS.logger.info(`签到奖励:${body.data.text},连续签到${body.data.hadSignDays}天`);
|
|
|
-// } else if (body && body.code === 1011040){
|
|
|
-// magicJS.logger.info("- 今日已完成");
|
|
|
-// } else {
|
|
|
-// magicJS.logger.info("- 签到失败");
|
|
|
-// magicJS.logger.info("- 失败原因 " + body?.message);
|
|
|
-// }
|
|
|
-// } catch (e) {
|
|
|
-// magicJS.logger.error(e);
|
|
|
-// }
|
|
|
-// resolve();
|
|
|
-// }).catch(err => {
|
|
|
-// const msg = `签到异常\n${JSON.stringify(err)}`;
|
|
|
-// magicJS.logger.error(msg);
|
|
|
-// reject(msg);
|
|
|
-// });
|
|
|
-// });
|
|
|
-// }
|
|
|
+async function liveSign() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ magicJS.logger.info("#### 直播签到任务");
|
|
|
+ const myRequest = {
|
|
|
+ url: "https://api.live.bilibili.com/xlive/web-ucenter/v1/sign/DoSign",
|
|
|
+ headers: {
|
|
|
+ 'cookie': config.cookieStr
|
|
|
+ }
|
|
|
+ };
|
|
|
+ magicJS.http.get(myRequest).then(response => {
|
|
|
+ try {
|
|
|
+ let body = response.body;
|
|
|
+ if (body?.code === 0) {
|
|
|
+ magicJS.logger.info("- 签到成功");
|
|
|
+ magicJS.logger.info(`签到奖励:${body.data.text},连续签到${body.data.hadSignDays}天`);
|
|
|
+ } else if (body && body.code === 1011040){
|
|
|
+ magicJS.logger.info("- 今日已完成");
|
|
|
+ } else {
|
|
|
+ magicJS.logger.info("- 签到失败");
|
|
|
+ magicJS.logger.info("- 失败原因 " + body?.message);
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ magicJS.logger.error(e);
|
|
|
+ } finally {
|
|
|
+ resolve();
|
|
|
+ }
|
|
|
+ }).catch(err => {
|
|
|
+ const msg = `签到异常\n${JSON.stringify(err)}`;
|
|
|
+ magicJS.logger.error(msg);
|
|
|
+ reject(msg);
|
|
|
+ });
|
|
|
+ });
|
|
|
+}
|
|
|
|
|
|
-// async function vipScoreSign() {
|
|
|
-// return new Promise((resolve, reject) => {
|
|
|
-// magicJS.logger.info("#### 大会员大积分签到任务");
|
|
|
-// if (config.user.vipStatus === 0) {
|
|
|
-// magicJS.logger.info("- 当前用户非大会员, 无法完成任务");
|
|
|
-// resolve();
|
|
|
-// } else {
|
|
|
-// if (check("score")) {
|
|
|
-// const myRequest = {
|
|
|
-// url: "https://api.bilibili.com/pgc/activity/score/task/sign",
|
|
|
-// method: "POST",
|
|
|
-// headers: {
|
|
|
-// 'Referer': 'https://big.bilibili.com/mobile/bigPoint/task',
|
|
|
-// 'cookie': config.cookieStr
|
|
|
-// }
|
|
|
-// };
|
|
|
-// magicJS.http.get(myRequest).then(response => {
|
|
|
-// try {
|
|
|
-// const body = response.body;
|
|
|
-// if (body?.code === 0 && body?.message === "success") {
|
|
|
-// magicJS.logger.info("- 签到成功")
|
|
|
-// config.score.time = startTime
|
|
|
-// config.score.num = 1
|
|
|
-// magicJS.data.write("bilibili_daily_bonus", magicJS.toStr(config))
|
|
|
-// } else {
|
|
|
-// magicJS.logger.info("- 签到失败")
|
|
|
-// magicJS.logger.info("- 失败原因 " + body?.message)
|
|
|
-// }
|
|
|
-// } catch (e) {
|
|
|
-// magicJS.logger.error(e);
|
|
|
-// }
|
|
|
-// resolve();
|
|
|
-// }).catch(err => {
|
|
|
-// const msg = `签到异常\n${JSON.stringify(err)}`;
|
|
|
-// magicJS.logger.error(msg);
|
|
|
-// reject();
|
|
|
-// });
|
|
|
-// } else {
|
|
|
-// magicJS.logger.info("- 今日已完成");
|
|
|
-// resolve();
|
|
|
-// }
|
|
|
-// }
|
|
|
-// });
|
|
|
-// }
|
|
|
+async function vipScoreSign() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ magicJS.logger.info("#### 大会员大积分签到任务");
|
|
|
+ if (config.user.vipStatus === 0) {
|
|
|
+ magicJS.logger.info("- 当前用户非大会员, 无法完成任务");
|
|
|
+ resolve();
|
|
|
+ } else {
|
|
|
+ if (check("score")) {
|
|
|
+ const myRequest = {
|
|
|
+ url: "https://api.bilibili.com/pgc/activity/score/task/sign",
|
|
|
+ method: "POST",
|
|
|
+ headers: {
|
|
|
+ 'Referer': 'https://big.bilibili.com/mobile/bigPoint/task',
|
|
|
+ 'cookie': config.cookieStr
|
|
|
+ }
|
|
|
+ };
|
|
|
+ magicJS.http.get(myRequest).then(response => {
|
|
|
+ try {
|
|
|
+ const body = response.body;
|
|
|
+ if (body?.code === 0 && body?.message === "success") {
|
|
|
+ magicJS.logger.info("- 签到成功")
|
|
|
+ config.score.time = startTime
|
|
|
+ config.score.num = 1
|
|
|
+ magicJS.data.write("bilibili_daily_bonus", magicJS.toStr(config))
|
|
|
+ } else {
|
|
|
+ magicJS.logger.info("- 签到失败")
|
|
|
+ magicJS.logger.info("- 失败原因 " + body?.message)
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ magicJS.logger.error(e);
|
|
|
+ } finally {
|
|
|
+ resolve();
|
|
|
+ }
|
|
|
+ }).catch(err => {
|
|
|
+ const msg = `签到异常\n${JSON.stringify(err)}`;
|
|
|
+ magicJS.logger.error(msg);
|
|
|
+ reject();
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ magicJS.logger.info("- 今日已完成");
|
|
|
+ resolve();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|
|
|
|
|
|
// async function vipExtraEx() {
|
|
|
// return new Promise((resolve, reject) => {
|
|
|
@@ -1243,37 +1246,37 @@ async function queryStatus() {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-// async function dynamic() {
|
|
|
-// return new Promise((resolve, reject) => {
|
|
|
-// magicJS.logger.info("#### 获取首页视频");
|
|
|
-// const myRequest = {
|
|
|
-// url: `https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/dynamic_new?uid=${config.cookie.DedeUserID}&type_list=8&from=&platform=web`,
|
|
|
-// headers: {
|
|
|
-// "cookie": config.cookieStr
|
|
|
-// }
|
|
|
-// };
|
|
|
-// magicJS.http.get(myRequest).then(response => {
|
|
|
-// try {
|
|
|
-// const body = response.body;
|
|
|
-// if (body?.data?.cards) {
|
|
|
-// cards = body.data.cards;
|
|
|
-// const { user, watch, share } = config;
|
|
|
-// user.time = watch.time = share.time = startTime;
|
|
|
-// magicJS.logger.info("- 获取视频动态成功");
|
|
|
-// } else {
|
|
|
-// magicJS.logger.info("- 获取视频动态失败");
|
|
|
-// }
|
|
|
-// } catch (e) {
|
|
|
-// magicJS.logger.error(JSON.stringify(e));
|
|
|
-// }
|
|
|
-// resolve();
|
|
|
-// }).catch(err => {
|
|
|
-// const msg = `获取首页视频异常\n${JSON.stringify(err)}`;
|
|
|
-// magicJS.logger.error(msg);
|
|
|
-// reject();
|
|
|
-// });
|
|
|
-// });
|
|
|
-// }
|
|
|
+async function dynamic() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ magicJS.logger.info("#### 获取首页视频");
|
|
|
+ const myRequest = {
|
|
|
+ url: `https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/dynamic_new?uid=${config.cookie.DedeUserID}&type_list=8&from=&platform=web`,
|
|
|
+ headers: {
|
|
|
+ "cookie": config.cookieStr
|
|
|
+ }
|
|
|
+ };
|
|
|
+ magicJS.http.get(myRequest).then(response => {
|
|
|
+ try {
|
|
|
+ const body = response.body;
|
|
|
+ if (body?.data?.cards) {
|
|
|
+ cards = body.data.cards;
|
|
|
+ const { user, watch, share } = config;
|
|
|
+ user.time = watch.time = share.time = startTime;
|
|
|
+ magicJS.logger.info("- 获取视频动态成功");
|
|
|
+ } else {
|
|
|
+ magicJS.logger.info("- 获取视频动态失败");
|
|
|
+ }
|
|
|
+ } catch (e) {
|
|
|
+ magicJS.logger.error(JSON.stringify(e));
|
|
|
+ }
|
|
|
+ resolve();
|
|
|
+ }).catch(err => {
|
|
|
+ const msg = `获取首页视频异常\n${JSON.stringify(err)}`;
|
|
|
+ magicJS.logger.error(msg);
|
|
|
+ reject();
|
|
|
+ });
|
|
|
+ });
|
|
|
+}
|
|
|
|
|
|
// Wbi签名获取
|
|
|
function getWbiSigns(requestParams) {
|