KR/jd_fcwb_help.js

27 lines
53 KiB
JavaScript
Raw Normal View History

2023-08-11 20:33:46 +08:00
/*
2023-11-15 13:30:39 +08:00
欢乐淘金发财挖宝助力
2023-08-11 20:33:46 +08:00
2023-11-15 13:30:39 +08:00
入口京东APP玩一玩欢乐淘金
2023-08-11 20:33:46 +08:00
2023-11-15 13:30:39 +08:00
环境变量
JD_FCWB_InviterId // 指定助力码 非必须,不填默认助力账号一 格式inviterId&inviterCode
JD_FCWB_NUM // 指定人数 非必须,不填默认跑全部账号
代理变量 本地IP理论正常助力也无需开启代理
JD_FCWB_PROXY_OPEN // 代理启用变量默认不开启true/false
JD_FCWB_PROXY_TUNNRL // 代理池代理地址变量,默认不开启,仅支持代理池模式(auto-proxy-pool)格式为http://ip:port
JD_FCWB_PROXY_URL // API代理地址变量默认不开启仅支持 数据格式:txt;提取数量:每次一个格式为http://api.xxx.xxx
JD_FCWB_NO_PROXY // 禁止走代理,默认 127.0.0.1,*.baidu.com 需要自行修改
2023-08-11 20:33:46 +08:00
2023-11-15 13:30:39 +08:00
cron:1 1 1 1 *
2023-08-11 20:33:46 +08:00
============Quantumultx===============
[task_local]
2023-11-15 13:30:39 +08:00
#欢乐淘金发财挖宝助力
1 1 1 1 * jd_fcwb_help.js, tag=欢乐淘金发财挖宝助力, enabled=true
2023-08-11 20:33:46 +08:00
*/
2023-11-15 13:30:39 +08:00
const $ = new Env('欢乐淘金(发财挖宝)助力')
2023-11-28 21:11:18 +08:00
var il='jsjiami.com.v7';const Illlii=iii1II;(function(li1i,ilIIil,lIili1,li1l,iliiII,iiI1li,IIliii){return li1i=li1i>>0x8,iiI1li='hs',IIliii='hs',function(i1111I,IliIl1,lIl1lI,iiI1ll,lIiliI){const lI1ill=iii1II;iiI1ll='tfi',iiI1li=iiI1ll+iiI1li,lIiliI='up',IIliii+=lIiliI,iiI1li=lIl1lI(iiI1li),IIliii=lIl1lI(IIliii),lIl1lI=0x0;const iIiill=i1111I();while(!![]&&--li1l+IliIl1){try{iiI1ll=parseInt(lI1ill(0x2b5,'EGOp'))/0x1*(-parseInt(lI1ill(0x242,'s2*N'))/0x2)+parseInt(lI1ill(0x15a,'p&wF'))/0x3+parseInt(lI1ill(0x17f,'EGOp'))/0x4+-parseInt(lI1ill(0x17d,'4SM)'))/0x5*(-parseInt(lI1ill(0x1bd,'j0rs'))/0x6)+-parseInt(lI1ill(0x21f,'p8Ns'))/0x7*(parseInt(lI1ill(0x314,'1mUs'))/0x8)+parseInt(lI1ill(0x144,'76S#'))/0x9+-parseInt(lI1ill(0x334,'v(KP'))/0xa;}catch(Ii1IIi){iiI1ll=lIl1lI;}finally{lIiliI=iIiill[iiI1li]();if(li1i<=li1l)lIl1lI?iliiII?iiI1ll=lIiliI:iliiII=lIiliI:lIl1lI=lIiliI;else{if(lIl1lI==iliiII['replace'](/[JtFgdUCKxlMpTfYGRVWN=]/g,'')){if(iiI1ll===IliIl1){iIiill['un'+iiI1li](lIiliI);break;}iIiill[IIliii](lIiliI);}}}}}(lIili1,ilIIil,function(Ii1IIl,l111I,ll1lli,ll1lll,Illlil,I1iili,lililI){return l111I='\x73\x70\x6c\x69\x74',Ii1IIl=arguments[0x0],Ii1IIl=Ii1IIl[l111I](''),ll1lli=`\x72\x65\x76\x65\x72\x73\x65`,Ii1IIl=Ii1IIl[ll1lli]('\x76'),ll1lll=`\x6a\x6f\x69\x6e`,(0x1494b4,Ii1IIl[ll1lll](''));});}(0xcc00,0x1d52e,Iii11l,0xce),Iii11l)&&(il=0x2264);const IIIlII=require('./jdCookie'),iiIiI1=require(Illlii(0x1ce,'Z^Ha')),ili1Il=require(Illlii(0x152,'hXVc')),ili1Ii=require(Illlii(0x1e3,'6dq[')),Iilll1=process[Illlii(0x18e,'9V&z')]['JD_FCWB_Notify']==='true',ll11I=process[Illlii(0x238,'DLYI')]['JD_FCWB_InviterId']||'',iIi1I=process[Illlii(0x166,'$YXS')][Illlii(0x15f,'Hlfl')],liIIl=Illlii(0x224,'Mc#Z'),IlI1lI=process[Illlii(0x21a,'s2*N')][Illlii(0x24e,'T1$k')]===Illlii(0x1fd,'x7#c'),liIIi=process['env'][Illlii(0x27b,'it^*')],IilllI=process['env'][Illlii(0x2db,'Hlfl')],iI1lIi=process[Illlii(0x1c8,'76S#')][Illlii(0x305,'6dq[')]||Illlii(0x1ea,'uA9H');let l1lllI='',llliIi=0x0;const i1lIli='2';let i1lIll=parseInt(i1lIli)*0x3e8;IlI1lI&&(liIIi||IilllI)&&(i1lIll=0x64);function iii1II(_0x49c875,_0xe847cb){const _0x3b8663=Iii11l();return iii1II=function(_0x3c537b,_0x4277c3){_0x3c537b=_0x3c537b-0x125;let _0x1e8183=_0x3b8663[_0x3c537b];if(iii1II['ApCGGV']===undefined){var _0x10b197=function(_0x4f7d1c){const _0x2a1947='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a3b01='',_0x5524fa='';for(let _0x1024d7=0x0,_0x5a796b,_0x5e809d,_0x261292=0x0;_0x5e809d=_0x4f7d1c['charAt'](_0x261292++);~_0x5e809d&&(_0x5a796b=_0x1024d7%0x4?_0x5a796b*0x40+_0x5e809d:_0x5e809d,_0x1024d7++%0x4)?_0x4a3b01+=String['fromCharCode'](0xff&_0x5a796b>>(-0x2*_0x1024d7&0x6)):0x0){_0x5e809d=_0x2a1947['indexOf'](_0x5e809d);}for(let _0x56ceec=0x0,_0x4166ad=_0x4a3b01['length'];_0x56ceec<_0x4166ad;_0x56ceec++){_0x5524fa+='%'+('00'+_0x4a3b01['charCodeAt'](_0x56ceec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5524fa);};const _0xe09cc0=function(_0x397cb4,_0x30ae50){let _0x14d730=[],_0x3d555f=0x0,_0x23b647,_0x38460d='';_0x397cb4=_0x10b197(_0x397cb4);let _0x3daa83;for(_0x3daa83=0x0;_0x3daa83<0x100;_0x3daa83++){_0x14d730[_0x3daa83]=_0x3daa83;}for(_0x3daa83=0x0;_0x3daa83<0x100;_0x3daa83++){_0x3d555f=(_0x3d555f+_0x14d730[_0x3daa83]+_0x30ae50['charCodeAt'](_0x3daa83%_0x30ae50['length']))%0x100,_0x23b647=_0x14d730[_0x3daa83],_0x14d730[_0x3daa83]=_0x14d730[_0x3d555f],_0x14d730[_0x3d555f]=_0x23b647;}_0x3daa83=0x0,_0x3d555f=0x0;for(let _0x3bc2e3=0x0;_0x3bc2e3<_0x397cb4['length'];_0x3bc2e3++){_0x3daa83=(_0x3daa83+0x1)%0x100,_0x3d555f=(_0x3d555f+_0x14d730[_0x3daa83])%0x100,_0x23b647=_0x14d730[_0x3daa83],_0x14d730[_0x3daa83]=_0x14d730[_0x3d555f],_0x14d730[_0x3d555f]=_0x23b647,_0x38460d+=String['fromCharCode'](_0x397cb4['charCodeAt'](_0x3bc2e3)^_0x14d730[(_0x14d730[_0x3daa83]+_0x14d730[_0x3d555f])%0x100]);}return _0x38460d;};iii1II['aleMNM']=_0xe09cc0,_0x49c875=arguments,iii1II['ApCGGV']=!![];}const _0x194957=_0x3b8663[0x0],_0x13e8e6=_0x3c537b+_0x194957,_0x59dc04=_0x49c875[_0x13e8e6];return!_0x59dc04?(iii1II['JtHEMg']===undefined&&(iii1II['JtHEMg
2023-08-11 20:33:46 +08:00
// prettier-ignore
2023-11-15 13:30:39 +08:00
function Env(t, e) { "undefined" != typeof process && JSON.stringify(process.env).indexOf("GITHUB") > -1 && process.exit(0); class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), n = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(n, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.d