风三得利修复

This commit is contained in:
smallfawn
2025-02-16 20:13:55 +08:00
parent 2515a72923
commit bd6077fd32

242
fsdlb.js
View File

@@ -4,64 +4,26 @@
* Fsdlb * Fsdlb
* Date: 2024-07-31 * Date: 2024-07-31
* cron "58 59 1 * * *" fsdlb.js * cron "58 59 1 * * *" fsdlb.js
* export fsdlb= Authorization 多账号换行或者#分隔 * export fsdlb= Authorization 多账号&分开 去掉Bearer
*/ */
// ============================================================================================================ // ============================================================================================================
const $ = new Env('逢三得利吧') const $ = new Env('逢三得利吧')
const axios = require('axios') const axios = require('axios')
const env_name = 'fsdlb' //环境变量名字 const env_name = 'fsdlb' //环境变量名字
const env = process.env[env_name] || '' const env = process.env[env_name] || ''
const Notify = 1 const Notify = 1
const debug = 0 const debug = 0
let scriptVersionNow = "1.0.0"; let scriptVersionNow = "1.0.0";
let msg = ""; let msg = "";
// ==================================异步顺序============================================================================== // ==================================异步顺序==============================================================================
!(async () => {
//await getNotice();
//await getVersion("yang7758258/ohhh154@main/fsdlb.js");
await main();
await SendMsg(msg);
})()
.catch((e) => $.logErr(e))
.finally(() => $.done());
//==================================脚本入口函数main()============================================================== //==================================脚本入口函数main()==============================================================
async function main() {
if (env == '') {
//没有设置变量,直接退出
console.log(`没有填写变量,请查看脚本说明: ${env_name}`)
return
}
let user_ck = env.split('\n')
DoubleLog(`\n========= 共找到 ${user_ck.length} 个账号 =========`);
let index = 1 //用来给账号标记序号, 从1开始
for (let ck of user_ck) {
if (!ck) continue //跳过空行
let ck_info = ck.split('&')
let Authorization = ck_info[0]
//let ticket = ck_info[1]
//let deviceCode = ck_info[2]
let user = {
index: index,
Authorization,
//ticket,
//deviceCode,
}
index = index + 1 //每次用完序号+1
//开始账号任务
let Run = new run(user);
await Run.userTask(user)
//每个账号之间等1~5秒随机时间
let rnd_time = Math.floor(Math.random() * 4000) + 1000
console.log(`随机等待${rnd_time / 1000}秒...`)
await $.wait(rnd_time)
}
}
// ======================================开始任务========================================= // ======================================开始任务=========================================
class run { class AAA {
constructor(user) { constructor(user) {
let timestamp = Date.now() let timestamp = Date.now()
this.headers = { this.headers = {
@@ -74,18 +36,18 @@ class run {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36",
} }
} }
async userTask(user) { async userTask(user) {
console.log(`\n========= 账号[${user.index}]开始任务 =========`) console.log(`\n========= 账号[${user.index}]开始任务 =========`)
await this.sign(user) await this.sign(user)
await this.account(user) await this.account(user)
} }
// ============================================================================================================================= // =============================================================================================================================
// //
async sign(user) { async sign(user) {
try { try {
DoubleLog(`🕊账号[${user.index}] 开始签到...`); DoubleLog(`🕊账号[${user.index}] 开始签到...`);
//console.log(formattedDate); //console.log(formattedDate);
let urlObject = { let urlObject = {
method: 'post', method: 'post',
@@ -93,48 +55,86 @@ async userTask(user) {
headers: this.headers, headers: this.headers,
data: { data: {
"miniappId": 159 "miniappId": 159
} }
} }
//console.log(urlObject); //console.log(urlObject);
let { data: result} = await axios.request(urlObject) let { data: result } = await axios.request(urlObject)
//console.log(result); //console.log(result);
if (result?.code == 200) { if (result?.code == 200) {
//打印签到结果 //打印签到结果
DoubleLog(`🕊账号[${user.index}] 签到成功:[${result.data.integralToastText}]🎉`); DoubleLog(`🕊账号[${user.index}] 签到成功:[${result.data.integralToastText}]🎉`);
}else{ } else {
DoubleLog(`🕊账号[${user.index}] 签到失败:${result.msg}🚫`) DoubleLog(`🕊账号[${user.index}] 签到失败:${result.msg}🚫`)
} }
} catch (e) { } catch (e) {
console.log(e); console.log(e);
} }
} }
// //
async account(user) { async account(user) {
try { try {
DoubleLog(`🕊账号[${user.index}] 开始查询...`); DoubleLog(`🕊账号[${user.index}] 开始查询...`);
let urlObject = { let urlObject = {
method: 'get', method: 'get',
url: `https://xiaodian.miyatech.com/api/user/auth/member/integral/union/flow/list?pageNo=1&pageSize=10&dataType=SCORE`, url: `https://xiaodian.miyatech.com/api/user/auth/member/integral/union/flow/list?pageNo=1&pageSize=10&dataType=SCORE`,
headers: this.headers, headers: this.headers,
} }
//console.log(urlObject); //console.log(urlObject);
let { data: result} = await axios.request(urlObject) let { data: result } = await axios.request(urlObject)
//console.log(result); //console.log(result);
if (result?.code == 200) { if (result?.code == 200) {
//打印签到结果 //打印签到结果
DoubleLog(`🕊账号[${user.index}] 查询成功:总积分[${result.data.totalScore}]🎉`); DoubleLog(`🕊账号[${user.index}] 查询成功:总积分[${result.data.totalScore}]🎉`);
}else { } else {
DoubleLog(`🕊账号[${user.index}] 查询失败:${result.msg}🚫`) DoubleLog(`🕊账号[${user.index}] 查询失败:${result.msg}🚫`)
} }
} catch (e) { } catch (e) {
console.log(e); console.log(e);
} }
} }
} }
async function main() {
if (env == '') {
//没有设置变量,直接退出
console.log(`没有填写变量,请查看脚本说明: ${env_name}`)
return
}
let user_ck = env.split('&')
DoubleLog(`\n========= 共找到 ${user_ck.length} 个账号 =========`);
let index = 1 //用来给账号标记序号, 从1开始
for (let ck of user_ck) {
if (!ck) continue //跳过空行
let ck_info = ck.split('#')
let Authorization = 'Bearer ' + ck_info[0]
//let ticket = ck_info[1]
//let deviceCode = ck_info[2]
let user = {
index: index,
Authorization,
//ticket,
//deviceCode,
}
index = index + 1 //每次用完序号+1
//开始账号任务
let Run = new AAA(user);
await Run.userTask(user)
//每个账号之间等1~5秒随机时间
let rnd_time = Math.floor(Math.random() * 4000) + 1000
console.log(`随机等待${rnd_time / 1000}秒...`)
await $.wait(rnd_time)
}
}
!(async () => {
await main();
await SendMsg(msg);
})()
.catch((e) => $.logErr(e))
.finally(() => $.done());
/** /**
* =========================================================发送消息============================================= * =========================================================发送消息=============================================
*/ */
@@ -170,91 +170,17 @@ function DoubleLog(data) {
/** /**
* ======================================================等待 X 秒============================================ * ======================================================等待 X 秒============================================
*/ */
function wait(n) {
return new Promise(function (resolve) {
setTimeout(resolve, n * 1000);
});
}
/**
* ======================================================随机等待 1-5 秒============================================
*/
function sjwait() {
return new Promise(function (resolve) {
let waitTime = Math.floor(Math.random() * 4000 + 1000);
setTimeout(resolve, waitTime);
});
}
// ==========================================================13位时间戳===================================================== // ==========================================================13位时间戳=====================================================
function getTimestamp() {
return new Date().getTime();
}
//===============================================网络请求httpRequest========================================= //===============================================网络请求httpRequest=========================================
function httpRequest(options, timeout = 1 * 1000) {
method = options.method ? options.method.toLowerCase() : options.body ? "post" : "get";
return new Promise(resolve => {
setTimeout(() => {
$[method](options, (err, resp, data) => {
try {
if (err) {
console.log(JSON.stringify(err));
$.logErr(err);
} else {
try { data = JSON.parse(data); } catch (error) { }
}
} catch (e) {
console.log(e);
$.logErr(e, resp);
} finally {
resolve(data);
}
})
}, timeout)
})
}
//==============================================Debug模式=============================================== //==============================================Debug模式===============================================
function debugLog(...args) {
if (debug) {
console.log(...args);
}
}
//===============================================获取远程通知======================================== //===============================================获取远程通知========================================
async function getNotice() {
try {
const urls = [
"https:tl.json",
];
let notice = null;
for (const url of urls) {
const options = { url, headers: { "User-Agent": "" }, };
const result = await httpRequest(options);
if (result && "notice" in result) {
notice = result.notice.replace(/\\n/g, "\n");
break;
}
}
if (notice) { $.DoubleLog(notice); }
} catch (e) {
console.log(e);
}
}
//==============================================获取远程版本================================================= //==============================================获取远程版本=================================================
function getVersion(scriptUrl, timeout = 3 * 1000) {
return new Promise((resolve) => {
const options = { url: `https://fastly.jsdelivr.net/gh/${scriptUrl}` };
$.get(options, (err, resp, data) => {
try {
const regex = /scriptVersionNow\s*=\s*(["'`])([\d.]+)\1/;
const match = data.match(regex);
const scriptVersionLatest = match ? match[2] : "";
DoubleLog(`\n当前版本:[${scriptVersionNow}]>>>云端☁️版本:[${scriptVersionLatest}]`);
} catch (e) {
$.logErr(e, resp);
}
resolve();
}, timeout);
});
}
//=============================================================================================================================================== //===============================================================================================================================================
//================================================固定API=============================================================================================== //================================================固定API===============================================================================================