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-16 11:38:36 +08:00
|
|
|
|
var version_='jsjiami.com.v7';const Ii111=iii1II;(function(Ii1IIi,Ii1IIl,l111I,ll1lli,ll1lll,Illlil,I1iili){return Ii1IIi=Ii1IIi>>0x2,Illlil='hs',I1iili='hs',function(lililI,lI1ill,Illlii,lI1ili,Il1II){const lIl1ll=iii1II;lI1ili='tfi',Illlil=lI1ili+Illlil,Il1II='up',I1iili+=Il1II,Illlil=Illlii(Illlil),I1iili=Illlii(I1iili),Illlii=0x0;const i1lll=lililI();while(!![]&&--ll1lli+lI1ill){try{lI1ili=-parseInt(lIl1ll(0x197,'hw*e'))/0x1*(parseInt(lIl1ll(0x207,'y$Xb'))/0x2)+parseInt(lIl1ll(0x25d,'ONdo'))/0x3*(parseInt(lIl1ll(0x1b1,'Q5P0'))/0x4)+parseInt(lIl1ll(0xb7,'1[1L'))/0x5+-parseInt(lIl1ll(0xb5,'^5rE'))/0x6*(parseInt(lIl1ll(0x20d,'@51K'))/0x7)+-parseInt(lIl1ll(0x248,'ZC^N'))/0x8+parseInt(lIl1ll(0x240,'Wsnn'))/0x9*(parseInt(lIl1ll(0x230,'ONdo'))/0xa)+-parseInt(lIl1ll(0xde,'KD@^'))/0xb;}catch(Ii11I){lI1ili=Illlii;}finally{Il1II=i1lll[Illlil]();if(Ii1IIi<=ll1lli)Illlii?ll1lll?lI1ili=Il1II:ll1lll=Il1II:Illlii=Il1II;else{if(Illlii==ll1lll['replace'](/[kgpQuFeDSCAfTLJENKOI=]/g,'')){if(lI1ili===lI1ill){i1lll['un'+Illlil](Il1II);break;}i1lll[I1iili](Il1II);}}}}}(l111I,Ii1IIl,function(I1iill,i1lli,i11111,lIl1li,Il1I1,lIilii,lIilil){return i1lli='\x73\x70\x6c\x69\x74',I1iill=arguments[0x0],I1iill=I1iill[i1lli](''),i11111=`\x72\x65\x76\x65\x72\x73\x65`,I1iill=I1iill[i11111]('\x76'),lIl1li=`\x6a\x6f\x69\x6e`,(0x1479c4,I1iill[lIl1li](''));});}(0x330,0x48ea4,Iii11l,0xce),Iii11l)&&(version_=Ii111(0x238,'&fpa'));const ili1Ii=require('./jdCookie'),Iilll1=require('./function/sendJDNotify'),ll11I=require(Ii111(0xf4,'9^&k')),iIi1I=require(Ii111(0x260,'ojeH')),liIIl=process['env'][Ii111(0x1e6,'8&)f')]===Ii111(0x23e,'AlR8'),IlI1lI=process[Ii111(0x121,'gvxU')][Ii111(0x243,'AlR8')]||'',liIIi=process[Ii111(0x91,'ojeH')]['JD_FCWB_NUM'],IilllI=Ii111(0x175,'J3dh'),iI1lIi=process[Ii111(0x1b3,'6UJQ')][Ii111(0xbc,'d2s@')]==='true',l1lllI=process[Ii111(0x276,'*6uI')][Ii111(0x17c,'ATrl')],llliIi=process[Ii111(0xb6,'k7bO')][Ii111(0x1e3,'qvfA')],i1lIli=process['env'][Ii111(0x1de,'RYA5')]||'*.kingran.cf,127.0.0.1,*.baidu.com';let i1lIll='',ll11ii=0x0;const liIlii='2';let llii1l=parseInt(liIlii)*0x3e8;iI1lIi&&(l1lllI||llliIi)&&(llii1l=0x64);$[Ii111(0xca,'4g8V')]=0x0,$['FCWBEnd']=![];let liIlil=![];if(iI1lIi){liIlil=!![];try{require(Ii111(0x237,'Xk*g'));if(llliIi){console[Ii111(0x1d8,'^5rE')]('\x0a☑️\x20API地址代理已开启:'),console[Ii111(0x264,'RYA5')]('☑️\x20代理地址为:'+llliIi+'\x0a');let llii11=/[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?/g;global[Ii111(0x190,'hw*e')][Ii111(0x218,'2ekr')]=llii11['exec'](llliIi)[0x0]+','+i1lIli;}else l1lllI?(global[Ii111(0x11a,'2ekr')][Ii111(0x279,'Wsnn')]=l1lllI,global[Ii111(0x222,'xPre')]['NO_PROXY']=''+i1lIli,console[Ii111(0x191,'6UJQ')](Ii111(0x9a,'&fpa')),console['log']('☑️\x20代理地址为:'+global[Ii111(0x13c,'Bo$c')][Ii111(0x11f,'ATrl')]+'\x0a')):(console[Ii111(0x1c7,'%Bkt')](Ii111(0x112,'h]Xl')),console[Ii111(0x277,'M^r%')]('⚠\x20代理池变量:export\x20JD_FCWB_PROXY_TUNNRL=\x27http://ip:port\x27'),console[Ii111(0x264,'RYA5')](Ii111(0xf0,'Wsnn')));}catch(Iillli){console[Ii111(0x270,'CnBZ')]('\x0a请安装global-agent依赖,才能启用代理!'),console[Ii111(0x217,'KD@^')](Ii111(0x1c6,'gvxU')),liIlil=![];}}else console[Ii111(0x169,'ATrl')](Ii111(0xf8,'l8rG')),console['log']('⚠\x20开启代理变量:export\x20JD_FCWB_PROXY_OPEN=\x27true\x27\x20\x0a');let llii1i='';function iii1II(_0x11fdec,_0x15e396){const _0x58c150=Iii11l();return iii1II=function(_0x54d8ca,_0x4525ec){_0x54d8ca=_0x54d8ca-0x90;let _0x122ac1=_0x58c150[_0x54d8ca];if(iii1II['JBThFi']===undefined){var _0x30e839=function(_0xbc306b){const _0x3f82a5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x501522='',_0x2f3c29='';for(let _0x10114b=0x0,_0x50fb24,_0x4c36cb,_0x388882=0x0;_0x4c36cb=_0xbc306b['charAt'](_0x388882++);~_0x4c36cb&&(_0x50fb24=_0x10114b%0x4?_0x50fb24*0x40+_0x4c36cb:_0x4c36cb,_0x10114b++%0x4)?_0x501522+=String['fromCharCode'](0xff&_0x50fb24>>(-0x2*_0x10114b&0x6)):0x0){_0x4c36cb=_0x3f82a5['indexOf'](_0x4c36cb);}for(let _0x156c8b=0x0,_0x5046b3=_0x501522['l
|
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
|