mirror of
https://github.com/6dylan6/jdpro.git
synced 2026-11-06 12:26:42 +08:00
1
This commit is contained in:
1 parent
ce1af47cda
commit
987eeab917
3 files changed
+38
-22
No files matched your search
+20
-6
@@ -441,7 +441,9 @@ def main():
|
||||
if os.path.exists("/ql/config/auth.json"):
|
||||
config="/ql/config/auth.json"
|
||||
envtype="ql"
|
||||
|
||||
if os.path.exists("/ql/data/db/keyv.sqlite"):
|
||||
config="/ql/data/db/keyv.sqlite"
|
||||
envtype="ql_latest"
|
||||
if os.path.exists("/ql/data/config/auth.json"):
|
||||
config="/ql/data/config/auth.json"
|
||||
envtype="ql"
|
||||
@@ -499,9 +501,21 @@ def main():
|
||||
url = 'http://127.0.0.1:5678/openApi/count'
|
||||
headers = {'Content-Type': 'application/json', 'Authorization': 'Bearer ', 'api-token': f'{token}'}
|
||||
datas = get(url, headers=headers).json()["data"]["accountCount"]
|
||||
|
||||
# printf(f"token:{token}")
|
||||
# printf(f"datas:{datas}")
|
||||
elif envtype == "ql_latest":
|
||||
with open(config, "r", encoding="latin1") as f1:
|
||||
content = f1.read()
|
||||
matches = re.search(r'token":"([^"]+)"', content)
|
||||
try:
|
||||
token = matches.group(1)
|
||||
except Exception as e:
|
||||
sys.exit(0)
|
||||
url = 'http://127.0.0.1:5600/api/envs'
|
||||
headers = {'Authorization': f'Bearer {token}'}
|
||||
body = {
|
||||
'searchValue': 'JD_WSCK',
|
||||
'Authorization': f'Bearer {token}'
|
||||
}
|
||||
datas = get(url, params=body, headers=headers).json()['data']
|
||||
|
||||
|
||||
if datas > 0 if isinstance(datas, int) else len(datas) > 0:
|
||||
@@ -510,7 +524,7 @@ def main():
|
||||
printf("\n错误:没有需要转换的JD_WSCK,退出脚本!")
|
||||
return
|
||||
|
||||
if envtype == "ql":
|
||||
if envtype in ('ql','ql_latest'):
|
||||
for data in datas:
|
||||
randomuserAgent()
|
||||
if data['status']!=0:
|
||||
@@ -527,7 +541,7 @@ def main():
|
||||
else:
|
||||
newpin=getRemark(pin,token)
|
||||
if "fake_" in cookie:
|
||||
message = f"pin为{newpin}的wskey过期了!"
|
||||
message = f"{newpin}的wskey过期了!"
|
||||
printf(message)
|
||||
url = 'http://127.0.0.1:5600/api/envs/disable'
|
||||
try:
|
||||
|
||||
+18
-8
@@ -236,14 +236,24 @@ def ql_login() -> str: # 方法 青龙登录(获取Token 功能同上)
|
||||
path = '/ql/config/auth.json' # 设置青龙 auth文件地址
|
||||
if not os.path.isfile(path):
|
||||
path = '/ql/data/config/auth.json' # 尝试设置青龙 auth 新版文件地址
|
||||
if os.path.isfile(path): # 进行文件真值判断
|
||||
with open(path, "r") as file: # 上下文管理
|
||||
auth = file.read() # 读取文件
|
||||
file.close() # 关闭文件
|
||||
auth = json.loads(auth) # 使用 json模块读取
|
||||
username = auth["username"] # 提取 username
|
||||
password = auth["password"] # 提取 password
|
||||
token = auth["token"] # 提取 authkey
|
||||
if not os.path.isfile(path):
|
||||
path_latest = '/ql/data/db/keyv.sqlite' # 尝试设置青龙 auth 新版文件地址
|
||||
if os.path.isfile(path) or os.path.isfile(path_latest): # 进行文件真值判断
|
||||
|
||||
if os.path.isfile(path):
|
||||
with open(path, "r") as file: # 上下文管理
|
||||
auth = file.read() # 读取文件
|
||||
file.close() # 关闭文件
|
||||
auth = json.loads(auth) # 使用 json模块读取
|
||||
username = auth["username"] # 提取 username
|
||||
password = auth["password"] # 提取 password
|
||||
token = auth["token"] # 提取 authkey
|
||||
else:
|
||||
with open(path_latest, "r", encoding="latin1") as file:
|
||||
auth = file.read() # 读取文件
|
||||
matches = re.search(r'token":"([^"]+)"', auth)
|
||||
token = matches.group(1)
|
||||
|
||||
try:
|
||||
twoFactorSecret = auth["twoFactorSecret"]
|
||||
except Exception as err:
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
|
||||
/*
|
||||
1 1 1 1 *
|
||||
*/
|
||||
|
||||
const $ = new Env('新年敲福_抽奖');
|
||||
var f0r32z,zc1f30,NL2NHR,yZbWe7,GhxjY0,NvZvWq,SZHjX3e,kiN7Fk,jV25DSA;function YZd9Qd(f0r32z,zc1f30,NL2NHR){for(NL2NHR=0x0;NL2NHR<zc1f30;NL2NHR++)f0r32z.push(f0r32z.shift());return f0r32z}const jnF4qaM=["length",0x1,"b",0x0,0xd5,0x8c,"a",0x9,0x71,"e",0x55,"d",0x8,0xff,"undefined",0x3f,0x6,"fromCodePoint",0x7,0xc,"push",0x17,0x5b,0x1fff,0x58,0xd,0xe,0x91,0xc0,0x18,"f",!0x1,0x56,0x57,"5","1",0x65,0x66,0x3,0x6f,"g",0x4,0x69,0x6b,0x10,"c","i",0x5,0x39,"h",0x45,0x79,0x7a,0x7d,0x7f,0x80,0x8a,0x8e,0x9a,0x9b,!0x0,0xab,"UA",0x2,0x34,0x28,0x2c,0x9c,0x9e,0x99,0x67,0xa4,0xd4,0xe3,0xbc,0x97,0xc3,0xc1,0xc2,0x41,"id",0x1f4,0x3e8,0xa,0xf6,0x3d,0x24,0x94,0x6d,0x84,0xb5,0x26,0xdf,0x92,0x5c,0xbb,0x14,0x31,0xa1,0x49,0x2f,null,0xaa,0xf8,0x6e,0xef,0xed,0xee,0xb2,0xc8,0xf7,"0",0xfa,0xb8,0x20,0x101,0x102,0x74,0x2b,0xec,0x106,0xa0,0xfd,0x11,0x100,0x64,0x98,0x127,0x129,"\u5143",0x12f,0x134,0xb1,0x4b,0x6c,0xd2,0x3b,0x149,0x14c,0x14f,";",0x152,0x90,0x73,0xb0,0x59,0xcd,0x7b,0x3e,0x16e,"fn",0x172,0x175,0x178,"cl",0x17b,"t","ua",0x181,0x70,0x5f,0x2e,0x4c,0x190,0x191,")",0x192,0x18d,0x18e,0xa2,0x37,0x1d,0x52,0x78,0x1a0,0x19b,0x19d,0x19e,0x1a4,0x18c,0x51,0x1a5,"j",0xea,0xae,0x1b1,0x1b4,0x1b7,0x1ba,0x1c3,0x96,0x1b,0x1be,0x88,0x54,0x27,0x47,0x1d0,0x1ca,0x1cc,0x1cd,0x1d5,0x1d2,0x1d6,0x1d7,0x1d8,0x1cb,0x1d9,0x1d1,0x1dc,0x1d3,0x1db,0xe9,0x1e3,0x1e4,0xe1,0x5e,0x200,0x35,0xf,0xbe,0x50,0x3ff,0x1f,0xe0,0xf0,0x12,0x13,0x40,0xffff,0x1f6,0x1f7,0x2000000,0x4000000,0x1ae,0x1b0,0x1ff,0x1b2,0x201,0x208,0x20e,0x225,0x22e,0x20c,0x72,"\u274C ",0x256,0x250,0x251,"\u4E0A\u9650",0x36363636,0x5c5c5c5c,0xf9,0xd800,0xdbff,0xdc00,0xdfff,0x10000,0x7ff,0x1fffff,0x1c,0x16,0xb,0x19,0x22,0x29,0x428a2f98,0x71374491,0x4a3f0431,0x164a245b,0x3956c25b,0x59f111f1,0x6dc07d5c,0x54e3a12b,0x27f85568,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x7f214e02,0x6423f959,0x3e640e8c,0x1b64963f,0x1041b87a,0xfc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,0x67c1aeae,0x57ce3993,0x4ffcd838,0x40a68039,0x391ff40d,0x2a586eb9,0x6ca6351,0x14292967,0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x7e3d36d2,0x6d8dd37b,0x5d40175f,0x57e599b5,0x3db47490,0x3893ae5d,0x2e6d17e7,0x2966f9dc,0xbf1ca7b,0x106aa070,0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,0x748f82ee,0x78a5636f,0x7b3787ec,0x7338fdf8,0x6f410006,0x5baf9315,0x41065c09,0x398e870e,0x6a09e667,0x4498517b,0x3c6ef372,0x5ab00ac6,0x510e527f,0x64fa9774,0x1f83d9ab,0x5be0cd19,0x75,0x254,0x255,0x259,0x246,0x204,0xd0,0x4e,0x30,0x293,0x294,"\u274E ",0x295,0x296,0x273,0x275,0x27d,0x27e,0x278,0x279,0x27a,0x27f,0x2b1,0x2b6,0x2b9,0x2ba,0x2bb,0x2bc,0x2bd,0x2be,0x2bf,0x2c0,0x2c1,0x2c6,0x2c4,0x2c2,0x2c8,0x2c9,0x2d1,0x2e1,0x1ed,0x2cb,0x28a,0xdd,0x43,0x2ec,0x2eb,void 0x0,0x2f4,0x2fc,"\u706B\u7206"," ",0x29b,0x29c,0x2a3,0x2a4,0x303,0x202,0x203,0x205,0x305,0x271,0x28b,0x280,0x60,0x297,0x301,0x311,0x87,"\n",0x31a,"/",":",0x2aa];VmgOE6(cLZJjoW(gZP2mRY),cLZJjoW(Sq3up9,jnF4qaM[0x3f]),cLZJjoW(rRbaX7W),cLZJjoW(UPJKniv));function cLZJjoW(f0r32z,zc1f30=jnF4qaM[0x1]){Object.defineProperty(f0r32z,jnF4qaM[0x0],{value:zc1f30,configurable:jnF4qaM[0x1f]});return f0r32z}function UPJKniv(...f0r32z){VmgOE6(f0r32z[jnF4qaM[0x0]]=jnF4qaM[0x1],f0r32z[jnF4qaM[0x6]]="eFMGJA<ya[b/plq?g4H6.:T{KxXz=!n|dWwS#P$vNB3cLji>Zu+1If_7Y9t}^Q%02]8URE*D,OhrC`;@&)~\"(5sVkmo",f0r32z[jnF4qaM[0x2]]=""+(f0r32z[jnF4qaM[0x3]]||""),f0r32z[-jnF4qaM[0x5]]=f0r32z[jnF4qaM[0x2]].length,f0r32z[jnF4qaM[0xb]]=[],f0r32z[jnF4qaM[0x9]]=jnF4qaM[0x3],f0r32z[-jnF4qaM[0xa]]=jnF4qaM[0x3],f0r32z[-jnF4qaM[0x8]]=-jnF4qaM[0x1]);for(f0r32z[jnF4qaM[0x4]]=jnF4qaM[0x3];f0r32z[jnF4qaM[0x4]]<f0r32z[-jnF4qaM[0x5]];f0r32z[jnF4qaM[0x4]]++){f0r32z[jnF4qaM[0x7]]=f0r32z[jnF4qaM[0x6]].indexOf(f0r32z[jnF4qaM[0x2]][f0r32z[jnF4qaM[0x4]]]);if(f0r32z[jnF4qaM[0x7]]===-jnF4qaM[0x1])continue;if(f0r32z[-jnF4qaM[0x8]]<jnF4qaM[0x3]){f0r32z[-jnF4qaM[0x8]]=f0r32z[jnF4qaM[0x7]]}else{VmgOE6(f0r32z[-jnF4qaM[0x8]]+=f0r32z[jnF4qaM[0x7]]*jnF4qaM[0x16],f0r32z[jnF4qaM[0x9]]|=f0r32z[-jnF4qaM[0x8]]<<f0r32z[-jnF4qaM[0xa]],f0r32z[-jnF4qaM[0xa]]+=(f0r32z[-jnF4qaM[0x8]]&jnF4qaM[0x17])>jnF4qaM[0x18]?jnF4qaM[0x19]:jnF4qaM[0x1a]);do{VmgOE6(f0r32z[jnF4qaM[0xb]].push(f0r32z[jnF4qaM[0x9]]&jnF4qaM[0xd]),f0r32z[jnF4qaM[0x9]]>>=jnF4qaM[0xc],f0r32z[-jnF4qaM[0xa]]-=jnF4qaM[0xc])}while(f0r32z[-jnF4qaM[0xa]]>jnF4qaM[0x12]);f0r32z[-jnF4qaM[0x8]]=-jnF4qaM[0x1]}}if(f0r32z[-jnF4qaM[0x8]]>-jnF4qaM[0x1]){f0r32z[jnF4qaM[0xb]].push((f0r32z[jnF4qaM[0x9]]|f0r32z[-jnF4qaM[0x8]]<<f0r32z[-jnF4qaM[0xa]])&jnF4qaM[0xd])}return RyAX4z(f0r32z[jnF4qaM[0xb]])}function rRbaX7W(...NL2NHR){NL2NHR[jnF4qaM[0x0]]=jnF4qaM[0x1];if(typeof f0r32z[NL2NHR[jnF4qaM[0x3]]]===jnF4qaM[0xe]){return f0r32z[NL2NHR[jnF4qaM[0x3]]]=UPJKniv(zc1f30[NL2NHR[jnF4qaM[0x3]]])}return f0r32z[NL2NHR[jnF4qaM[0x3]]]}VmgOE6(f0r32z={},zc1f30=YZd9Qd(["U_(f=","S_(f?7xrr4","H?T7n;CIy","\"G}`<EIt<","Z91d}`~IF0^","uN\"d@)mS>0W,#\"r$ycZ[NOTcI5DG[73%hty~`3[Z5rB_HyA)h?@3cpjL~r//.<;QtF","n9#`WNT#G","P9:b4)Q5Xai%^\"AP_N7_Qhk&N%~0CSd#8Pp|}`gh<2(9y+gvBX2[","!?i|B&cly","P9:b4)Q5Line truncated
|
||||
function Env(o, t) { 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((r, i) => { s.call(this, t, (t, e, s) => { t ? i(t) : r(e) }) }) } 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.logLevels = { debug: 0, info: 1, warn: 2, error: 3 }, this.logLevelPrefixs = { debug: "[DEBUG] ", info: "[INFO] ", warn: "[WARN] ", error: "[ERROR] " }, this.logLevel = "info", 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.encoding = "utf-8", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } getEnv() { return "undefined" != typeof $environment && $environment["surge-version"] ? "Surge" : "undefined" != typeof $environment && $environment["stash-version"] ? "Stash" : "undefined" != typeof module && module.exports ? "Node.js" : "undefined" != typeof $task ? "Quantumult X" : "undefined" != typeof $loon ? "Loon" : "undefined" != typeof $rocket ? "Shadowrocket" : void 0 } isNode() { return "Node.js" === this.getEnv() } isQuanX() { return "Quantumult X" === this.getEnv() } isSurge() { return "Surge" === this.getEnv() } isLoon() { return "Loon" === this.getEnv() } isShadowrocket() { return "Shadowrocket" === this.getEnv() } isStash() { return "Stash" === this.getEnv() } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null, ...s) { try { return JSON.stringify(t, ...s) } catch { return e } } getjson(t, e) { let s = e; if (this.getdata(t)) 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(r => { this.get({ url: t }, (t, e, s) => r(s)) }) } runScript(a, o) { return new Promise(r => { let t = this.getdata("@chavy_boxjs_userCfgs.httpapi"); t = t && t.replace(/\n/g, "").trim(); var e = (e = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout")) ? +e : 20, [s, i] = (e = o && o.timeout ? o.timeout : e, t.split("@")); this.post({ url: `http://${i}/v1/scripting/evaluate`, body: { script_text: a, mock_type: "cron", timeout: e }, headers: { "X-Key": s, Accept: "*/*" }, timeout: e }, (t, e, s) => r(s)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; this.fs = this.fs || require("fs"), this.path = this.path || require("path"); var t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), r = !s && this.fs.existsSync(e); if (!s && !r) return {}; r = s ? t : e; try { return JSON.parse(this.fs.readFileSync(r)) } catch (t) { return {} } } writedata() { var t, e, s, r, i; this.isNode() && (this.fs = this.fs || require("fs"), this.path = this.path || require("path"), t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), r = !(s = this.fs.existsSync(t)) && this.fs.existsSync(e), i = JSON.stringify(this.data), !s && r ? this.fs.writeFileSync(e, i) : this.fs.writeFileSync(t, i)) } lodash_get(t, e, s) { let r = t; for (const t of e.replace(/\[(\d+)\]/g, ".$1").split(".")) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, r, e) { return Object(t) === t && ((r = Array.isArray(r) ? r : r.toString().match(/[^.[\]]+/g) || []).slice(0, -1).reduce((t, e, s) => Object(t[e]) === t[e] ? t[e] : t[e] = Math.abs(r[s + 1]) >> 0 == +r[s + 1] ? [] : {}, t)[r[r.length - 1]] = e), t } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { var [, s, r] = /^@(.*?)\.(.*?)$/.exec(t); if (s = s ? this.getval(s) : "") try { const t = JSON.parse(s); e = t ? this.lodash_get(t, r, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { var [, r, i] = /^@(.*?)\.(.*?)$/.exec(e), a = this.getval(r), a = r ? "null" === a ? null : a || "{}" : "{}"; try { const e = JSON.parse(a); this.lodash_set(e, i, t), s = this.setval(JSON.stringify(e), r) } catch (e) { this.lodash_set(a = {}, i, t), s = this.setval(JSON.stringify(a), r) } } else s = this.setval(t, e); return s } getval(t) { switch (this.getEnv()) { case "Surge": case "Loon": case "Stash": case "Shadowrocket": return $persistentStore.read(t); case "Quantumult X": return $prefs.valueForKey(t); case "Node.js": return this.data = this.loaddata(), this.data[t]; default: return this.data && this.data[t] || null } } setval(t, e) { switch (this.getEnv()) { case "Surge": case "Loon": case "Stash": case "Shadowrocket": return $persistentStore.write(t, e); case "Quantumult X": return $prefs.setValueForKey(t, e); case "Node.js": return this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0; default: return this.data && this.data[e] || null } } initGotEnv(t) { this.got = this.got || rLine truncated
|
||||
Reference in new issue
Block a user