Continue seeded Qinglong script collection
This commit is contained in:
211
脚本库/微信小程序/抓包版/顾家家居/2025-04-28_sudojia_kukahome_ed2a4846.js
Normal file
211
脚本库/微信小程序/抓包版/顾家家居/2025-04-28_sudojia_kukahome_ed2a4846.js
Normal file
@@ -0,0 +1,211 @@
|
||||
// # Source: https://github.com/sudojia/AutoTaskScript/blob/script/src/wx_mini/sudojia_kukahome.js
|
||||
// # Raw: https://raw.githubusercontent.com/sudojia/AutoTaskScript/script/src/wx_mini/sudojia_kukahome.js
|
||||
// # Repo: sudojia/AutoTaskScript
|
||||
// # Path: src/wx_mini/sudojia_kukahome.js
|
||||
// # UploadedAt: 2025-04-28T19:26:13+08:00
|
||||
// # SHA256: ed2a4846dfb23a405728b0edcb14e6949605954fe27ef5bcfa553280517808f9
|
||||
// # Category: 微信小程序/抓包版
|
||||
// # Evidence: appid/openid/session_key/encryptedData等小程序字段
|
||||
//
|
||||
|
||||
/**
|
||||
* #小程序://顾家会员/DUUpEeo0zF2Gw8k
|
||||
*
|
||||
* 抓包 Host:https://mc.kukahome.com 获取请求头 AccessToken 和 X-Customer
|
||||
* export GU_HOME_TOKEN = 'AccessToken#X-Customer'
|
||||
* 多账号用 & 或换行
|
||||
*
|
||||
* @author Telegram@sudojia
|
||||
* @site https://blog.imzjw.cn
|
||||
* @date 2024/12/3
|
||||
* @lastModifyTime 2024/12/27
|
||||
*
|
||||
* const $ = new Env('顾家家居')
|
||||
* cron: 5 10 * * *
|
||||
*/
|
||||
const initScript = require('../utils/initScript')
|
||||
const {$, notify, sudojia, checkUpdate} = initScript('顾家家居');
|
||||
const kukaList = process.env.GU_HOME_TOKEN ? process.env.GU_HOME_TOKEN.split(/[\n&]/) : [];
|
||||
// 消息推送
|
||||
let message = '';
|
||||
const appId = '667516';
|
||||
const appSecret = 'FH3yRrHG2RfexND8';
|
||||
// 接口地址
|
||||
const baseUrl = 'https://mc.kukahome.com'
|
||||
let headers = {
|
||||
"user-agent": sudojia.getRandomUserAgent(),
|
||||
'Content-Type': 'application/json',
|
||||
'brandCode': 'K001',
|
||||
'appid': '667516',
|
||||
'Referer': 'https://servicewechat.com/wx0770280d160f09fe/214/page-frame.html',
|
||||
'Accept-Language': 'zh-CN,zh;q=0.9',
|
||||
};
|
||||
!(async () => {
|
||||
await checkUpdate($.name, kukaList);
|
||||
console.log(`\n已随机分配 User-Agent\n\n${headers['user-agent'] || headers['User-Agent']}`);
|
||||
for (let i = 0; i < kukaList.length; i++) {
|
||||
const index = i + 1;
|
||||
const [aToken, xCustomer] = kukaList[i].split('#');
|
||||
// 添加请求头
|
||||
headers.AccessToken = aToken;
|
||||
headers['X-Customer'] = xCustomer;
|
||||
console.log(`\n*****第[${index}]个${$.name}账号*****`);
|
||||
message += `📣====${$.name}账号[${index}]====📣\n`;
|
||||
await main();
|
||||
await $.wait(sudojia.getRandomWait(2000, 2500));
|
||||
}
|
||||
if (message) {
|
||||
await notify.sendNotify(`「${$.name}」`, `${message}`);
|
||||
}
|
||||
})().catch((e) => $.logErr(e)).finally(() => $.done());
|
||||
|
||||
async function main() {
|
||||
await getUserInfo();
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await sign();
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await getArticleList();
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await getScore();
|
||||
}
|
||||
|
||||
async function getUserInfo() {
|
||||
try {
|
||||
const data = await sendSignRequest(`/club-server/api/user/info`, 'post');
|
||||
const nickName = data.data.nickName || '简朴寨';
|
||||
const mobile = data.data.mobile || '18888888888';
|
||||
console.log(`${nickName}(${mobile})`);
|
||||
message += `${nickName}(${mobile})\n`;
|
||||
} catch (e) {
|
||||
console.error(`获取用户信息时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function sign() {
|
||||
try {
|
||||
const data = await sendSignRequest('/integral-server/scenePoint/scene/point', 'post', {
|
||||
"scene": "sign",
|
||||
"brandCode": "K001"
|
||||
});
|
||||
console.log(`签到成功,积分+${data.data}`);
|
||||
message += `签到成功,积分+${data.data}\n`;
|
||||
} catch (e) {
|
||||
console.error(`签到时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function getArticleList() {
|
||||
try {
|
||||
const data = await sendSignRequest(`/club-server/applet/waterfall/newWaterfall`, 'post', {
|
||||
pageNum: 1,
|
||||
pageSize: 30,
|
||||
source: 1
|
||||
});
|
||||
const article = data.data[Math.floor(Math.random() * data.data.length)];
|
||||
const {id, title} = article;
|
||||
console.log(`开始点赞【${title}】`);
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await likePost(id);
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await collectPost(id);
|
||||
await $.wait(sudojia.getRandomWait(1e3, 2e3));
|
||||
await sharePost(id);
|
||||
} catch (e) {
|
||||
console.error(`获取文章时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function likePost(postId) {
|
||||
try {
|
||||
const body = {id: postId};
|
||||
await sendSignRequest(`/club-server/front/postOrder/like`, 'post', body);
|
||||
await sendSignRequest(`/club-server/front/member/likeSendPoint`, 'post', {
|
||||
postOrderId: postId,
|
||||
triggerType: 1,
|
||||
content: "点赞"
|
||||
});
|
||||
console.log('点赞成功~');
|
||||
await $.wait(sudojia.getRandomWait(2e3, 3e3));
|
||||
console.log('开始取消点赞');
|
||||
await sendSignRequest(`/club-server/front/postOrder/like`, 'post', body);
|
||||
console.log('取消点赞成功~');
|
||||
} catch (e) {
|
||||
console.error(`点赞时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function collectPost(postId) {
|
||||
try {
|
||||
const body = {id: postId};
|
||||
await sendSignRequest(`/club-server/front/postOrder/collect`, 'post', body);
|
||||
await sendSignRequest(`/club-server/front/member/likeSendPoint`, 'post', {
|
||||
postOrderId: postId,
|
||||
triggerType: 2,
|
||||
content: "收藏"
|
||||
});
|
||||
console.log('收藏文章成功`');
|
||||
await $.wait(sudojia.getRandomWait(2e3, 3e3));
|
||||
console.log('开始取消收藏');
|
||||
await sendSignRequest(`/club-server/front/postOrder/collect`, 'post', body);
|
||||
console.log('取消收藏成功~');
|
||||
} catch (e) {
|
||||
console.error(`收藏时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function sharePost(postId) {
|
||||
try {
|
||||
await sendSignRequest(`/club-server/front/postOrder/share`, 'post', {id: postId});
|
||||
console.log('分享成功~');
|
||||
await $.wait(sudojia.getRandomWait(500, 800));
|
||||
await sendSignRequest(`/club-server/front/member/likeSendPoint`, 'post', {
|
||||
postOrderId: postId,
|
||||
triggerType: 3,
|
||||
content: "微信好友转发",
|
||||
forwardType: 2
|
||||
});
|
||||
} catch (e) {
|
||||
console.error(`分享时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function getScore() {
|
||||
try {
|
||||
const data = await sendSignRequest(`/club-server/front/member/userCenterScore`, 'get');
|
||||
console.log(`已连续签到${data.data.signCount}天`);
|
||||
console.log(`当前积分:${data.data.point}`);
|
||||
message += `已连续签到${data.data.signCount}天\n`;
|
||||
message += `当前积分:${data.data.point}\n\n`;
|
||||
} catch (e) {
|
||||
console.error(`获取积分时发生异常:${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function sendSignRequest(url, method, body) {
|
||||
headers.sign = genSign();
|
||||
if (body) {
|
||||
headers.parameterSign = genSign(body);
|
||||
}
|
||||
const data = await sudojia.sendRequest(`${baseUrl}${url}`, method, headers, body);
|
||||
if (0 !== data.code) {
|
||||
throw new Error(`请求 ${url} 失败:${data.message}\n`);
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
function genSign(body) {
|
||||
const ts = new Date().getTime();
|
||||
headers.timestamp = ts;
|
||||
if (body) {
|
||||
return sudojia.md5(sudojia.md5(processBody(body)) + String(ts).substring(4, 10));
|
||||
} else {
|
||||
return sudojia.md5(appId + appSecret + ts).toLowerCase();
|
||||
}
|
||||
}
|
||||
|
||||
function processBody(data) {
|
||||
return Object.keys(data).sort((a, b) => a.localeCompare(b)).map(key => {
|
||||
const value = data[key];
|
||||
return [key, typeof value === 'object' || Array.isArray(value) ? JSON.stringify(value) : value];
|
||||
}).filter(pair => pair !== null).map(([key, value]) => `${key}=${value}`).join('&');
|
||||
}
|
||||
Reference in New Issue
Block a user