From baac059d7847912fc0455dd137639eaba7167724 Mon Sep 17 00:00:00 2001 From: Faker <Faker@apple.com> Date: Tue, 7 Nov 2023 15:11:11 +0800 Subject: [PATCH] expired --- TS_JDHelloWorld.d.ts | 35 ----- TS_USER_AGENTS.ts | 316 ------------------------------------------- jd_joy_park_run.ts | 231 ------------------------------- jd_joy_run_reward.ts | 90 ------------ jd_wechat_zz.ts | 32 ----- 5 files changed, 704 deletions(-) delete mode 100644 TS_JDHelloWorld.d.ts delete mode 100644 TS_USER_AGENTS.ts delete mode 100644 jd_joy_park_run.ts delete mode 100644 jd_joy_run_reward.ts delete mode 100644 jd_wechat_zz.ts diff --git a/TS_JDHelloWorld.d.ts b/TS_JDHelloWorld.d.ts deleted file mode 100644 index 4b3fbdc..0000000 --- a/TS_JDHelloWorld.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -interface User { - index: number; - UserName: string; - cookie: string; - UserAgent: string; - end?: boolean; -} -declare class JDHelloWorld { - scriptName: string; - cookiesArr: string[]; - users: User[]; - constructor(scriptName?: string); - getCookie(): Promise<void>; - exceptCookie(filename?: string): string[]; - get(url: string, headers?: any): Promise<unknown>; - post(url: string, data: any, headers?: any, params?: object): Promise<object | string>; - wait(ms?: number): Promise<unknown>; - o2s(obj: object, title?: string): void; - getShareCodePool(key: string, num: number): Promise<string[]>; - getshareCodeHW(key: string): Promise<string[]>; - getRandomNumberByRange(start: number, end: number): number; - getRandomNumString(e: number): string; - getEncStr(fn: string, body: { - id?: number; - taskType?: number; - }): object; - getSign(fn: string, body: object): Promise<string>; - cashDoSign(): Promise<unknown>; - run(son: { - main: any; - help?: any; - tips?: any; - }, help?: Function, tips?: Function): Promise<void>; -} -export { User, JDHelloWorld }; diff --git a/TS_USER_AGENTS.ts b/TS_USER_AGENTS.ts deleted file mode 100644 index 3ca25eb..0000000 --- a/TS_USER_AGENTS.ts +++ /dev/null @@ -1,316 +0,0 @@ -import axios from "axios" -import {Md5} from "ts-md5" -import * as dotenv from "dotenv" -import {existsSync, readFileSync} from "fs" -import {sendNotify} from './sendNotify' - -dotenv.config() -const USER_AGENTS_ARR: string[] = [ - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; ONEPLUS A5010 Build/QKQ1.191014.012; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;android;10.0.2;9;network/4g;Mozilla/5.0 (Linux; Android 9; Mi Note 3 Build/PKQ1.181007.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/045131 Mobile Safari/537.36", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; GM1910 Build/QKQ1.190716.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36", - "jdapp;android;10.0.2;9;network/wifi;Mozilla/5.0 (Linux; Android 9; 16T Build/PKQ1.190616.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044942 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;13.6;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.6;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.5;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.1;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.3;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.7;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.1;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.3;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;13.4;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 13_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.3;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;android;10.0.2;9;network/wifi;Mozilla/5.0 (Linux; Android 9; MI 6 Build/PKQ1.190118.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044942 Mobile Safari/537.36", - "jdapp;android;10.0.2;11;network/wifi;Mozilla/5.0 (Linux; Android 11; Redmi K30 5G Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045511 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;11.4;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 11_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15F79", - "jdapp;android;10.0.2;10;;network/wifi;Mozilla/5.0 (Linux; Android 10; M2006J10C Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; M2006J10C Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; ONEPLUS A6000 Build/QKQ1.190716.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045224 Mobile Safari/537.36", - "jdapp;android;10.0.2;9;network/wifi;Mozilla/5.0 (Linux; Android 9; MHA-AL00 Build/HUAWEIMHA-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044942 Mobile Safari/537.36", - "jdapp;android;10.0.2;8.1.0;network/wifi;Mozilla/5.0 (Linux; Android 8.1.0; 16 X Build/OPM1.171019.026; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044942 Mobile Safari/537.36", - "jdapp;android;10.0.2;8.0.0;network/wifi;Mozilla/5.0 (Linux; Android 8.0.0; HTC U-3w Build/OPR6.170623.013; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/044942 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;14.0.1;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; LYA-AL00 Build/HUAWEILYA-AL00L; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;14.2;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.3;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.2;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;android;10.0.2;8.1.0;network/wifi;Mozilla/5.0 (Linux; Android 8.1.0; MI 8 Build/OPM1.171019.026; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/045131 Mobile Safari/537.36", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; Redmi K20 Pro Premium Edition Build/QKQ1.190825.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045227 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;14.3;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;iPhone;10.0.2;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", - "jdapp;android;10.0.2;11;network/wifi;Mozilla/5.0 (Linux; Android 11; Redmi K20 Pro Premium Edition Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045513 Mobile Safari/537.36", - "jdapp;android;10.0.2;10;network/wifi;Mozilla/5.0 (Linux; Android 10; MI 8 Build/QKQ1.190828.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045227 Mobile Safari/537.36", - "jdapp;iPhone;10.0.2;14.1;network/wifi;Mozilla/5.0 (iPhone; CPU iPhone OS 14_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1", -] - -function getRandomNumberByRange(start: number, end: number) { - end <= start && (end = start + 100) - return Math.floor(Math.random() * (end - start) + start) -} - -let USER_AGENT = USER_AGENTS_ARR[getRandomNumberByRange(0, USER_AGENTS_ARR.length)] - -async function getBeanShareCode(cookie: string) { - let {data}: any = await axios.post('https://api.m.jd.com/client.action', - `functionId=plantBeanIndex&body=${encodeURIComponent( - JSON.stringify({version: "9.0.0.1", "monitor_source": "plant_app_plant_index", "monitor_refer": ""}) - )}&appid=ld&client=apple&area=5_274_49707_49973&build=167283&clientVersion=9.1.0`, { - headers: { - Cookie: cookie, - Host: "api.m.jd.com", - Accept: "*/*", - Connection: "keep-alive", - "User-Agent": USER_AGENT - } - }) - if (data.data?.jwordShareInfo?.shareUrl) - return data.data.jwordShareInfo.shareUrl.split('Uuid=')![1] - else - return '' -} - -async function getFarmShareCode(cookie: string) { - let {data}: any = await axios.post('https://api.m.jd.com/client.action?functionId=initForFarm', `body=${encodeURIComponent(JSON.stringify({"version": 4}))}&appid=wh5&clientVersion=9.1.0`, { - headers: { - "cookie": cookie, - "origin": "https://home.m.jd.com", - "referer": "https://home.m.jd.com/myJd/newhome.action", - "User-Agent": USER_AGENT, - "Content-Type": "application/x-www-form-urlencoded" - } - }) - - if (data.farmUserPro) - return data.farmUserPro.shareCode - else - return '' -} - -async function getCookie(): Promise<string[]> { - let cookiesArr: string[] = [] - const jdCookieNode = require('./jdCookie.js') - for (let keys of Object.keys(jdCookieNode)) { - cookiesArr.push(jdCookieNode[keys]) - } - let ptpin_temp: string[] = [], uniqueCookieArr: string[] = [] - for (let cookie of cookiesArr) { - let UserName: string = decodeURIComponent(cookie.match(/pt_pin=([^;]*)/)![1]) - if (!ptpin_temp.includes(UserName)) { - ptpin_temp.push(UserName) - uniqueCookieArr.push(cookie) - } - } - cookiesArr = uniqueCookieArr - console.log(`共${cookiesArr.length}个京东账号\n`) - return cookiesArr -} - -function wait(ms: number) { - return new Promise(resolve => { - setTimeout(resolve, ms) - }) -} - -function getJxToken(cookie: string, phoneId: string = '') { - function generateStr(input: number) { - let src = 'abcdefghijklmnopqrstuvwxyz1234567890' - let res = '' - for (let i = 0; i < input; i++) { - res += src[Math.floor(src.length * Math.random())] - } - return res - } - - if (!phoneId) - phoneId = generateStr(40) - let timestamp = Date.now().toString() - let nickname = cookie.match(/pt_pin=([^;]*)/)![1] - let jstoken = Md5.hashStr('' + decodeURIComponent(nickname) + timestamp + phoneId + 'tPOamqCuk9NLgVPAljUyIHcPRmKlVxDy') - return { - 'strPgtimestamp': timestamp, - 'strPhoneID': phoneId, - 'strPgUUNum': jstoken - } -} - -function exceptCookie(filename: string = 'x.ts') { - let except: any = [] - if (existsSync('./utils/exceptCookie.json')) { - try { - except = JSON.parse(readFileSync('./utils/exceptCookie.json').toString() || '{}')[filename] || [] - } catch (e) { - console.log('./utils/exceptCookie.json JSON格式错误') - } - } - return except -} - -function randomString(e: number, word?: number) { - e = e || 32 - let t = word === 26 ? "012345678abcdefghijklmnopqrstuvwxyz" : "0123456789abcdef", a = t.length, n = "" - for (let i = 0; i < e; i++) - n += t.charAt(Math.floor(Math.random() * a)) - return n -} - -function o2s(arr: object, title: string = '') { - title ? console.log(title, JSON.stringify(arr)) : console.log(JSON.stringify(arr)) -} - -function randomNumString(e: number) { - e = e || 32 - let t = '0123456789', a = t.length, n = "" - for (let i = 0; i < e; i++) - n += t.charAt(Math.floor(Math.random() * a)) - return n -} - -function randomWord(n: number = 1) { - let t = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', a = t.length - let rnd: string = '' - for (let i = 0; i < n; i++) { - rnd += t.charAt(Math.floor(Math.random() * a)) - } - return rnd -} - -async function getshareCodeHW(key: string) { - let shareCodeHW: string[] = [] - for (let i = 0; i < 5; i++) { - try { - let {data}: any = await axios.get('https://api.jdsharecode.xyz/api/HW_CODES') - shareCodeHW = data[key] || [] - if (shareCodeHW.length !== 0) { - break - } - } catch (e) { - console.log("getshareCodeHW Error, Retry...") - await wait(getRandomNumberByRange(2000, 6000)) - } - } - return shareCodeHW -} - -async function getShareCodePool(key: string, num: number) { - let shareCode: string[] = [] - for (let i = 0; i < 2; i++) { - try { - let {data}: any = await axios.get(`https://api.jdsharecode.xyz/api/${key}/${num}`) - shareCode = data.data || [] - console.log(`随机获取${num}个${key}成功:${JSON.stringify(shareCode)}`) - if (shareCode.length !== 0) { - break - } - } catch (e) { - console.log("getShareCodePool Error, Retry...") - await wait(getRandomNumberByRange(2000, 6000)) - } - } - return shareCode -} - -/* -async function wechat_app_msg(title: string, content: string, user: string) { - let corpid: string = "", corpsecret: string = "" - let {data: gettoken} = await axios.get(`https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=${corpid}&corpsecret=${corpsecret}`) - let access_token: string = gettoken.access_token - - let {data: send} = await axios.post(`https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${access_token}`, { - "touser": user, - "msgtype": "text", - "agentid": 1000002, - "text": { - "content": `${title}\n\n${content}` - }, - "safe": 0 - }) - if (send.errcode === 0) { - console.log('企业微信应用消息发送成功') - } else { - console.log('企业微信应用消息发送失败', send) - } -} -*/ - -async function getDevice() { - let {data} = await axios.get('https://betahub.cn/api/apple/devices/iPhone', { - headers: { - 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36' - } - }) - data = data[getRandomNumberByRange(0, 16)] - return data.identifier -} - -async function getVersion(device: string) { - let {data} = await axios.get(`https://betahub.cn/api/apple/firmwares/${device}`, { - headers: { - 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36' - } - }) - data = data[getRandomNumberByRange(0, data.length)] - return data.firmware_info.version -} - -async function jdpingou() { - let device: string, version: string; - device = await getDevice(); - version = await getVersion(device); - return `jdpingou;iPhone;5.19.0;${version};${randomString(40)};network/wifi;model/${device};appBuild/100833;ADID/;supportApplePay/1;hasUPPay/0;pushNoticeIsOpen/0;hasOCPay/0;supportBestPay/0;session/${getRandomNumberByRange(10, 90)};pap/JA2019_3111789;brand/apple;supportJDSHWK/1;Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148` -} - -function get(url: string, headers?: any): Promise<any> { - return new Promise((resolve, reject) => { - axios.get(url, { - headers: headers - }).then(res => { - if (typeof res.data === 'string' && res.data.includes('jsonpCBK')) { - resolve(JSON.parse(res.data.match(/jsonpCBK.?\(([\w\W]*)\);?/)[1])) - } else { - resolve(res.data) - } - }).catch(err => { - reject({ - code: err?.response?.status || -1, - msg: err?.response?.statusText || err.message || 'error' - }) - }) - }) -} - -function post(url: string, prarms?: string | object, headers?: any): Promise<any> { - return new Promise((resolve, reject) => { - axios.post(url, prarms, { - headers: headers - }).then(res => { - resolve(res.data) - }).catch(err => { - reject({ - code: err?.response?.status || -1, - msg: err?.response?.statusText || err.message || 'error' - }) - }) - }) -} - -export default USER_AGENT -export { - getBeanShareCode, - getFarmShareCode, - getCookie, - wait, - getRandomNumberByRange, - getJxToken, - exceptCookie, - randomString, - o2s, - randomNumString, - getshareCodeHW, - getShareCodePool, - randomWord, - jdpingou, - get, - post, - USER_AGENTS_ARR -} diff --git a/jd_joy_park_run.ts b/jd_joy_park_run.ts deleted file mode 100644 index 7c9ce5c..0000000 --- a/jd_joy_park_run.ts +++ /dev/null @@ -1,231 +0,0 @@ -/** -汪汪乐园-跑步+组队 -默认翻倍到0.01红包结束,修改请设置变量 -export JD_JOY_PARK_RUN_ASSETS="0.04" -cron:30 0 * * * * -30 0 * * * * jd_joy_park_run.ts -new Env('极速版汪汪赛跑'); - -**/ - -import {get, post, o2s, requireConfig, wait} from './function/TS_USER_AGENTS' -import {H5ST} from "./function/h5st" -import {existsSync, readFileSync} from "fs"; -import {getDate} from "date-fns"; - -let cookie: string = '', res: any = '', UserName: string = '', fp_448de: string = '' || process.env.FP_448DE, fp_b6ac3: string = '' || process.env.FP_B6AC3 -let assets: number = 0, captainId: string = '', h5stTool: H5ST = null - -!(async () => { - let cookiesArr: string[] = await requireConfig() - let account: { pt_pin: string, joy_park_run: number }[] = [] - - - for (let [index, value] of cookiesArr.entries()) { - cookie = value - UserName = decodeURIComponent(cookie.match(/pt_pin=([^;]*)/)![1]) - console.log(`\n开始【京东账号${index + 1}】${UserName}\n`) - - - - assets = parseFloat(process.env.JD_JOY_PARK_RUN_ASSETS || '0.01') - let rewardAmount: number = 0 - try { - h5stTool = new H5ST('448de', 'jdltapp;', fp_448de) - await h5stTool.__genAlgo() - res = await team('runningMyPrize', {"linkId": "L-sOanK_5RJCz7I314FpnQ", "pageSize": 20, "time": null, "ids": null}) - let sum: number = 0, success: number = 0 - for (let t of res?.data?.detailVos || []) { - if (t.amount > 0 && getDate(new Date(t.createTime)) === new Date().getDate()) { - sum = add(sum, t.amount) - success++ - } else { - break - } - } - console.log('今日成功', success, '次') - console.log('今日收益', sum.toFixed(2), '元') - - res = await team('runningTeamInfo', {"linkId": "L-sOanK_5RJCz7I314FpnQ"}) - if (!captainId) { - if (res.data.members.length === 0) { - console.log('成为队长') - captainId = res.data.captainId - } else if (res.data.members.length !== 6) { - console.log('队伍未满', res.data.members.length, '人') - console.log('战队收益', res.data.teamSumPrize, '元') - captainId = res.data.captainId - } else { - console.log('队伍已满', res.data.members.length, '人') - console.log('战队收益', res.data.teamSumPrize, '元') - } - } else if (captainId && res.data.members.length === 0) { - console.log('已有组队ID,未加入队伍') - res = await team('runningJoinTeam', {"linkId": "L-sOanK_5RJCz7I314FpnQ", "captainId": captainId}) - if (res.code === 0) { - console.log('组队成功') - for (let member of res.data.members) { - if (member.captain) { - console.log('队长', member.nickName) - break - } - } - if (res.data.members.length === 6) { - console.log('队伍已满') - captainId = '' - } - } else { - o2s(res, '组队失败') - } - } else { - console.log('已组队', res.data.members.length, '人') - console.log('战队收益', res.data.teamSumPrize, '元') - } - - - h5stTool = new H5ST('b6ac3', 'jdltapp;', fp_b6ac3) - await h5stTool.__genAlgo() - res = await runningPageHome() - console.log('🧧总金额', res.data.runningHomeInfo.prizeValue, '元') - - let energy: number = res.data.runningHomeInfo.energy - console.log('💊 X', res.data.runningHomeInfo.energy, '个能量棒') - await wait(2000) - if (res.data.runningHomeInfo.nextRunningTime){ - console.log('⏳体力恢复中,还有', secondsToMinutes(res.data.runningHomeInfo.nextRunningTime / 1000)) - if (res.data.runningHomeInfo.nextRunningTime / 1000 < 300) { - await wait(res.data.runningHomeInfo.nextRunningTime) - res = await runningPageHome() - console.log('体力恢复完成,开始跑步....') - await wait(1000) - } else { - console.log('⏳等体力恢复在跑吧!'); - continue; - } - } else { - console.log('体力已恢复,开始跑步....') - } - - await startRunning(res, assets) - for (let i = 0; i < energy; i++) { - console.log('💉消耗能量棒跑步....') - res = await api('runningUseEnergyBar', {"linkId": "L-sOanK_5RJCz7I314FpnQ"}) - //console.log(res.errMsg) - res = await runningPageHome() - await startRunning(res, assets) - await wait(1000) - } - res = await runningPageHome() - console.log('🧧总金额', res.data.runningHomeInfo.prizeValue, '元') - await wait(2000) - } catch (e) { - console.log('Error', e) - await wait(3000) - } - } -})() - -async function startRunning(res: any, assets: number) { - if (!res.data.runningHomeInfo.nextRunningTime) { - console.log('终点目标', assets) - for (let i = 0; i < 5; i++) { - res = await api('runningOpenBox', {"linkId": "L-sOanK_5RJCz7I314FpnQ"}) - if (parseFloat(res.data.assets) >= assets) { - let assets: number = parseFloat(res.data.assets) - res = await api('runningPreserveAssets', {"linkId": "L-sOanK_5RJCz7I314FpnQ"}) - console.log('领取成功', assets) - break - } else { - if (res.data.doubleSuccess) { - console.log('翻倍成功', parseFloat(res.data.assets)) - await wait(10000) - } else if (!res.data.doubleSuccess && !res.data.runningHomeInfo.runningFinish) { - console.log('开始跑步', parseFloat(res.data.assets)) - await wait(10000) - } else { - console.log('翻倍失败') - break - } - } - } - } - await wait(3000) -} - -async function api(fn: string, body: object) { - let timestamp: number = Date.now(), h5st: string = '' - if (fn === 'runningOpenBox') { - h5st = h5stTool.__genH5st({ - appid: "activities_platform", - body: JSON.stringify(body), - client: "ios", - clientVersion: "3.1.0", - functionId: "runningOpenBox", - t: timestamp.toString() - }) - } - let params: string = `functionId=${fn}&body=${JSON.stringify(body)}&t=${timestamp}&appid=activities_platform&client=ios&clientVersion=3.1.0&cthr=1` - h5st && (params += `&h5st=${h5st}`) - return await post('https://api.m.jd.com/', params, { - 'authority': 'api.m.jd.com', - 'content-type': 'application/x-www-form-urlencoded', - 'cookie': cookie, - 'origin': 'https://h5platform.jd.com', - 'referer': 'https://h5platform.jd.com/', - 'user-agent': 'jdltapp;' - }) -} - -async function runningPageHome() { - return get(`https://api.m.jd.com/?functionId=runningPageHome&body=%7B%22linkId%22:%22L-sOanK_5RJCz7I314FpnQ%22,%22isFromJoyPark%22:true,%22joyLinkId%22:%22LsQNxL7iWDlXUs6cFl-AAg%22%7D&t=${Date.now()}&appid=activities_platform&client=ios&clientVersion=3.1.0`, { - 'Host': 'api.m.jd.com', - 'Origin': 'https://h5platform.jd.com', - 'User-Agent': 'jdltapp;', - 'Referer': 'https://h5platform.jd.com/', - 'Cookie': cookie - }) -} - -async function team(fn: string, body: object) { - let timestamp: number = Date.now(), h5st: string - h5st = h5stTool.__genH5st({ - appid: "activities_platform", - body: JSON.stringify(body), - client: "ios", - clientVersion: "3.1.0", - functionId: fn, - t: timestamp.toString() - }) - return await get(`https://api.m.jd.com/?functionId=${fn}&body=${encodeURIComponent(JSON.stringify(body))}&t=${timestamp}&appid=activities_platform&client=ios&clientVersion=3.1.0&cthr=1&h5st=${h5st}`, { - 'Host': 'api.m.jd.com', - 'User-Agent': 'jdltapp;', - 'Origin': 'https://h5platform.jd.com', - 'X-Requested-With': 'com.jd.jdlite', - 'Referer': 'https://h5platform.jd.com/', - 'Cookie': cookie - }) -} - -// 秒转时分秒 -function secondsToMinutes(seconds: number) { - let minutes: number = Math.floor(seconds / 60) - let second: number = Math.floor(seconds % 60) - return `${minutes}分${second}秒` -} - -// 小数加法 -function add(num1: number, num2: number) { - let r1: number, r2: number - try { - r1 = num1.toString().split('.')[1].length - } catch (e) { - r1 = 0 - } - try { - r2 = num2.toString().split('.')[1].length - } catch (e) { - r2 = 0 - } - let m: number = Math.pow(10, Math.max(r1, r2)) - return (num1 * m + num2 * m) / m -} \ No newline at end of file diff --git a/jd_joy_run_reward.ts b/jd_joy_run_reward.ts deleted file mode 100644 index 88de456..0000000 --- a/jd_joy_run_reward.ts +++ /dev/null @@ -1,90 +0,0 @@ -/** -汪汪赛跑-提现10元,周五9点 -59 59 8 * * 5 jd_joy_run_reward.ts -new Env('汪汪赛跑提现') -updateTime:2022-07-09 -**/ - -import { get, post, requireConfig, wait } from './TS_USER_AGENTS' -import { H5ST } from "./function/h5st" - -let cookie: string = '', res: any = '', UserName: string = '', fp_448de: string = '' || process.env.FP_448DE, fp_b6ac3: string = '' || process.env.FP_B6AC3 -let h5stTool: H5ST = null - -!(async () => { - let cookiesArr: string[] = await requireConfig() - for (let [index, value] of cookiesArr.entries()) { - cookie = value - UserName = decodeURIComponent(cookie.match(/pt_pin=([^;]*)/)![1]) - console.log(`\n开始【京东账号${index + 1}】${UserName}\n`) - let rewardAmount: number = 0 - try { - h5stTool = new H5ST('448de', 'jdltapp;', fp_448de) - await h5stTool.__genAlgo() - res = await team('runningMyPrize', { "linkId": "L-sOanK_5RJCz7I314FpnQ", "pageSize": 20, "time": null, "ids": null }) - rewardAmount = res.data.rewardAmount - if (res.data.runningCashStatus.currentEndTime) { - console.log('可提现', rewardAmount) - res = await api('runningPrizeDraw', { "linkId": "L-sOanK_5RJCz7I314FpnQ", "type": 2, "level": 3 }) - if (res.errMsg.indexOf("不足") > -1) { - res = await api('runningPrizeDraw', { "linkId": "L-sOanK_5RJCz7I314FpnQ", "type": 2, "level": 2 }) - } - await wait(1000) - if (res.success) { - console.log(res.data.message) - } else { - console.log('提现失败:', res.errMsg) - } - } else { - console.log('还未到提现时间') - } - } catch (e) { - console.log('Error', e) - await wait(1000) - } - } -})() - -async function api(fn: string, body: object) { - let timestamp: number = Date.now(), h5st: string = '' - if (fn === 'runningOpenBox') { - h5st = h5stTool.__genH5st({ - appid: "activities_platform", - body: JSON.stringify(body), - client: "ios", - clientVersion: "3.1.0", - functionId: "runningOpenBox", - t: timestamp.toString() - }) - } - let params: string = `functionId=${fn}&body=${JSON.stringify(body)}&t=${timestamp}&appid=activities_platform&client=ios&clientVersion=3.1.0&cthr=1` - h5st && (params += `&h5st=${h5st}`) - return await post('https://api.m.jd.com/', params, { - 'authority': 'api.m.jd.com', - 'content-type': 'application/x-www-form-urlencoded', - 'cookie': cookie, - 'origin': 'https://h5platform.jd.com', - 'referer': 'https://h5platform.jd.com/', - 'user-agent': 'jdltapp;' - }) -} - -async function team(fn: string, body: object) { - let timestamp: number = Date.now(), h5st: string - h5st = h5stTool.__genH5st({ - appid: "activities_platform", - body: JSON.stringify(body), - client: "ios", - clientVersion: "3.1.0", - functionId: fn, - t: timestamp.toString() - }) - return await get(`https://api.m.jd.com/?functionId=${fn}&body=${encodeURIComponent(JSON.stringify(body))}&t=${timestamp}&appid=activities_platform&client=ios&clientVersion=3.1.0&cthr=1&h5st=${h5st}`, { - 'Host': 'api.m.jd.com', - 'User-Agent': 'jdltapp;', - 'Origin': 'https://h5platform.jd.com', - 'X-Requested-With': 'com.jd.jdlite', - 'Referer': 'https://h5platform.jd.com/', - 'Cookie': cookie - }) -} diff --git a/jd_wechat_zz.ts b/jd_wechat_zz.ts deleted file mode 100644 index f28855d..0000000 --- a/jd_wechat_zz.ts +++ /dev/null @@ -1,32 +0,0 @@ -/** - * 赚赚 - * cron: 30 9 * * * - */ - -import {requireConfig, wait, get, randomNumString} from './TS_USER_AGENTS' - -let cookie: string = '', UserName: string = '', res: any = '' - -!(async () => { - let cookiesArr: string[] = await requireConfig() - for (let [index, value] of cookiesArr.entries()) { - cookie = value - UserName = decodeURIComponent(cookie.match(/pt_pin=([^;]*)/)![1]) - console.log(`\n开始【京东账号${index + 1}】${UserName}\n`) - let headers: object = {'Host': 'api.m.jd.com', 'wqreferer': 'http://wq.jd.com/wxapp/pages/hd-interaction/task/index', 'User-Agent': 'MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1', 'Referer': 'https://servicewechat.com/wx8830763b00c18ac3/115/page-frame.html', 'Content-Type': 'application/json', 'Cookie': cookie} - - res = await get(`https://api.m.jd.com/client.action?functionId=interactTaskIndex&body=%7B%22mpVersion%22%3A%223.4.0%22%7D&appid=wh5&loginWQBiz=interact&g_ty=ls&g_tk=${randomNumString(9)}`, headers) - console.log(res.data.cashExpected) - - for (let t of res.data.taskDetailResList) { - if (t.times === 0) { - console.log(t.taskName) - let taskItem: object = {...t, "fullTaskName": `${t.taskName} (0/1)`, "btnText": "去完成"} - res = await get(`https://api.m.jd.com/client.action?functionId=doInteractTask&body=${encodeURIComponent(JSON.stringify({"taskId": t.taskId, "taskItem": taskItem, "actionType": 0, "taskToken": t.taskToken, "mpVersion": "3.4.0"}))}&appid=wh5&loginWQBiz=interact&g_ty=ls&g_tk=${randomNumString(9)}`, headers) - console.log(res.message) - await wait(2000) - } - } - await wait(2000) - } -})() \ No newline at end of file