Continue seeded Qinglong script collection
This commit is contained in:
164
脚本库/web版/账密/稀土掘金/2025-04-28_sudojia_juejin_72513420.js
Normal file
164
脚本库/web版/账密/稀土掘金/2025-04-28_sudojia_juejin_72513420.js
Normal file
@@ -0,0 +1,164 @@
|
||||
// # Source: https://github.com/sudojia/AutoTaskScript/blob/script/src/web/sudojia_juejin.js
|
||||
// # Raw: https://raw.githubusercontent.com/sudojia/AutoTaskScript/script/src/web/sudojia_juejin.js
|
||||
// # Repo: sudojia/AutoTaskScript
|
||||
// # Path: src/web/sudojia_juejin.js
|
||||
// # UploadedAt: 2025-04-28T19:26:13+08:00
|
||||
// # SHA256: 7251342054b8f13aaaca34394af2829506de2ae87455cf13251f68775d831fef
|
||||
// # Category: web版/账密
|
||||
// # Evidence: web/H5关键词 + username/password/login
|
||||
//
|
||||
|
||||
/**
|
||||
* 稀土掘金 https://juejin.cn/
|
||||
*
|
||||
* 仅每日签到(不维护了)
|
||||
* 获取 Cookie、只要 sessionid 的值和手动签到之后抓取 https://api.juejin.cn/growth_api/v1/check_in 的 url 拼接的 uuid=123456&spider=0&msToken=xxxxxx&a_bogus=xxxxxx 用 # 分开
|
||||
* 填写示例:
|
||||
* export JUEJIN_COOKIE = 'sessionid#uuid=123456&spider=0&msToken=xxxxxx&a_bogus=xxxxxx'
|
||||
* 多账号用换行,不要用 &
|
||||
*
|
||||
* @author Telegram@sudojia
|
||||
* @site https://blog.imzjw.cn
|
||||
* @date 2022/01/19
|
||||
* @lastModify 2024/08/16
|
||||
*
|
||||
* const $ = new Env('稀土掘金')
|
||||
* cron: 5 10 * * *
|
||||
*/
|
||||
const initScript = require('../utils/initScript')
|
||||
const {$, notify, sudojia, checkUpdate} = initScript('稀土掘金');
|
||||
const jueJinList = process.env.JUEJIN_COOKIE ? process.env.JUEJIN_COOKIE.split(/\n/) : [];
|
||||
let message = '';
|
||||
// 接口地址
|
||||
const baseUrl = 'https://api.juejin.cn';
|
||||
// 请求头
|
||||
const headers = {
|
||||
'Accept': '*/*',
|
||||
'Accept-Encoding': 'gzip, deflate, br, zstd',
|
||||
"Content-type": "application/json",
|
||||
'Referer': 'https://juejin.cn/',
|
||||
'Origin': 'https://juejin.cn',
|
||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36',
|
||||
};
|
||||
|
||||
!(async () => {
|
||||
await checkUpdate($.name, jueJinList);
|
||||
// console.log(`\n已随机分配 User-Agent\n\n${headers['user-agent'] || headers['User-Agent']}`);
|
||||
for (let i = 0; i < jueJinList.length; i++) {
|
||||
const [juejinCookie, urlList] = jueJinList[i].split('#');
|
||||
headers.Cookie = `sid_tt=${juejinCookie}; sessionid=${juejinCookie}; sessionid_ss=${juejinCookie}`;
|
||||
const index = i + 1;
|
||||
console.log(`\n*****第[${index}]个${$.name}账号*****`);
|
||||
if (await checkStatus()) {
|
||||
console.error('Cookie 已失效');
|
||||
await notify.sendNotify(`「Cookie失效通知」`, `${$.name}账号[${index}] Cookie 已失效,请重新登录获取 Cookie\n\n`);
|
||||
continue;
|
||||
}
|
||||
message += `📣====${$.name}账号[${index}]====📣\n`;
|
||||
await $.wait(sudojia.getRandomWait(800, 1200));
|
||||
await main(urlList);
|
||||
await $.wait(sudojia.getRandomWait(2000, 2500));
|
||||
}
|
||||
if (message) {
|
||||
await notify.sendNotify(`「${$.name}」`, `${message}`);
|
||||
}
|
||||
})().catch((e) => $.logErr(e)).finally(() => $.done());
|
||||
|
||||
/**
|
||||
* 主函数
|
||||
*
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
async function main(urlList) {
|
||||
await getUserName();
|
||||
await $.wait(sudojia.getRandomWait(2300, 2700));
|
||||
await checkIn(urlList);
|
||||
await $.wait(sudojia.getRandomWait(3000, 3500));
|
||||
await getOreNum(urlList);
|
||||
await $.wait(sudojia.getRandomWait(3000, 3500));
|
||||
await getCount();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户信息
|
||||
*/
|
||||
async function getUserName() {
|
||||
try {
|
||||
const data = await sudojia.sendRequest(baseUrl + '/user_api/v1/user/get_info_pack?aid=2608', 'post', headers, {
|
||||
"pack_req": {
|
||||
"user_counter": true,
|
||||
"user_growth_info": true,
|
||||
"user": true
|
||||
}
|
||||
});
|
||||
// 用户昵称
|
||||
const userName = data.data.user_basic.user_name;
|
||||
message += `【账号昵称】${userName}\n`;
|
||||
console.log(`【账号昵称】${userName}`);
|
||||
} catch (e) {
|
||||
console.error(`获取用户信息发生异常: ${e.response.data}`);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查状态
|
||||
*
|
||||
* @return {Promise<*>}
|
||||
*/
|
||||
async function checkStatus() {
|
||||
const data = await sudojia.sendRequest(baseUrl + '/growth_api/v1/get_today_status', 'get', headers);
|
||||
return 403 === data.err_no;
|
||||
}
|
||||
|
||||
/**
|
||||
* 签到函数
|
||||
*
|
||||
* @returns {*}
|
||||
*/
|
||||
async function checkIn(urlList) {
|
||||
try {
|
||||
// uuid=7402961076386793000&spider=0&msToken=6N7P3ETmcpkVBSBdIEAoOvIE5TlEhnAmt382dbZpa1tNLnKhYR8QkGIKTJINouJxXGwc-JkvcwmUPhinCBGBtXg7ZsNn5LZzJtOpR4PSuRejD4spLQYUJ3tJdEurDng%3D&a_bogus=mX-QkcZ8Msm1Zhvtkhkz9GWEeOm0YWRkgZENqN9HUUo7
|
||||
const data = await sudojia.sendRequest(baseUrl + `/growth_api/v1/check_in?aid=2608&${urlList}`, 'post', headers);
|
||||
if (15001 === data.err_no) {
|
||||
console.log(data.err_msg);
|
||||
message += `【签到信息】${data.err_msg}\n`
|
||||
return;
|
||||
}
|
||||
console.log(`签到成功,获得 ${data.data.incr_point} 矿石`);
|
||||
message += `【签到信息】签到成功, 获得 ${data.data.incr_point} 矿石\n`
|
||||
} catch (e) {
|
||||
console.error(`签到时发生异常: ${e.response.data}`);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取总账号矿石数
|
||||
*/
|
||||
async function getOreNum(urlList) {
|
||||
const data = await sudojia.sendRequest(baseUrl + `/growth_api/v1/get_cur_point?aid=2608&${urlList}`, 'get', headers);
|
||||
console.log(`当前矿石数:${data.data}`);
|
||||
message += `【总矿石数】${data.data} 矿石\n`
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询免费抽奖次数
|
||||
*/
|
||||
async function queryFreeLuckyDrawCount(urlList) {
|
||||
try {
|
||||
const data = await sudojia.sendRequest(baseUrl + `/growth_api/v1/lottery_config/get?aid=2608&${urlList}`, 'get', headers);
|
||||
// 获取免费抽奖次数
|
||||
return data.data.free_count;
|
||||
} catch (e) {
|
||||
console.error(`查询免费抽奖次数时发生异常: ${e.response.data}`);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 统计签到天数, 没什么用~
|
||||
*/
|
||||
async function getCount() {
|
||||
const data = await sudojia.sendRequest(baseUrl + '/growth_api/v1/get_counts?aid=2608', 'get', headers);
|
||||
console.log(`已连续签到${data.data.cont_count}天、累计签到${data.data.sum_count}天`);
|
||||
message += `【签到统计】已连续签到${data.data.cont_count}天、累计签到${data.data.sum_count}天\n`
|
||||
}
|
||||
Reference in New Issue
Block a user