This commit is contained in:
可达鸭 2025-06-04 08:33:35 +08:00
parent b9dcdf69ae
commit dec266be38
2 changed files with 180 additions and 169 deletions

View File

@ -25,52 +25,32 @@ export class Main extends Template {
async main(p) { async main(p) {
let user = p.data.user; let user = p.data.user;
let context = p.context; let context = p.context;
if (this.turnCount == 0) {
var html = await this.curl({
'url': `https://pro.m.jd.com/mall/active/${context.id}/index.html?stath=20&navh=44&babelChannel=ttt1&tttparams=zZ1qguleyJnTGF0IjozOS45NjEwNTQsInVuX2FyZWEiOiIxXzI4MDBfNTU4MzhfMCIsImRMYXQiOiIiLCJwcnN0YXRlIjoiMCIsImFkZHJlc3NJZCI6IjUzODg3NDg3NyIsImxhdCI6IiIsInBvc0xhdCI6MzkuOTYxMDU0LCJwb3NMbmciOjExNi4zMjIwNjEsImdwc19hcmVhIjoiMF8wXzBfMCIsImxuZyI6IiIsInVlbXBzIjoiMC0wLTAiLCJnTG5nIjoxMTYuMzIyMDYxLCJtb2RlbCI6ImlQaG9uZTEzLDMiLCJkTG5nIjoiIn70=`,
user,
referer: 'https://pro.m.jd.com/mall/active/3nh7HzSjYemGqAHSbktTrf8rrH8M/index.html'
}
)
let react = this.jsonParse(this.match([/__react_data__\s*=\s*(.*?)\s*;\n+/,], html))
let signToken = this.match(/"signToken"\s*:\s*"(\w+)"/, html)
let status = 0 let status = 0
let isOk let isOk
if (signToken) { await this.curl({
let sign = await this.curl({ 'url': `https://api.m.jd.com/atop_channel_newcomer_interactive_info`,
'url': `https://api.m.jd.com/atop_channel_sign_in`, 'form': `appid=jd-super-market&t=1748874023489&functionId=atop_channel_newcomer_interactive_info&client=m&body={"babelChannel":"ttt32","isJdApp":"1","isWx":"0"}`,
'form': `appid=jd-super-market&t=1713230766545&functionId=atop_channel_sign_in&client=m&uuid=de21c6604748f97dd3977153e51a47f4efdb9a47&body={"signToken":"${signToken}","channelFollowStatus":1,"bizCode":"cn_retail_3c_digital","scenario":"sign","babelChannel":"ttt1","isJdApp":"1","isWx":"0"}`,
user, user,
algo: { algo: {
appId: 'b8fc7' appId: '35fa0',
refresh: true
} }
} }
) )
if (this.haskey(sign, 'success')) { let info = await this.curl({
status = 1 'url': `https://api.m.jd.com/atop_channel_interactive_info`,
p.log(`签到成功`) 'form': `appid=jd-super-market&t=1748855058331&functionId=atop_channel_interactive_info&client=m&body={"bizCode":"cn_retail_3c_digital","scenario":"sign","babelChannel":"ttt32","isJdApp":"1","isWx":"0"}`,
for (let i of sign.data.rewards) { user,
p.log(`获得: ${i.rewardDesc}`) algo: {
appId: '33c74'
} }
} }
else if (this.haskey(sign, "code", "14013")) { )
p.log(`您今天已经签过到了`) let items = this.haskey(info, 'data.floorData.items')
status = 1 if (!items) {
p.err("没有获取到数据")
} }
else { for (let i of items) {
p.log(this.haskey(sign, 'message') || sign)
}
}
var data = {}
if (this.haskey(react, 'activityData.floorList')) {
data = react.activityData
}
for (let ii in data) {
if (ii == 'floorList') {
for (let jj of data[ii]) {
if (jj.providerData && this.haskey(jj, 'providerData.data.floorData.name') == '汪贝任务楼层') {
let floor = jj.providerData.data.floorData
for (let i of floor.items) {
status = 0 status = 0
if (i.completionFlag) { if (i.completionFlag) {
status = 1 status = 1
@ -98,7 +78,7 @@ export class Main extends Template {
} }
itemId = this.dict[u] itemId = this.dict[u]
let help = await this.curl({ let help = await this.curl({
'form': `appid=jd-super-market&t=1742122986378&functionId=atop_channel_complete_task&client=m&body={"bizCode":"cn_retail_3c_digital","scenario":"sign","assignmentType":"${i.assignmentType}","encryptAssignmentId":"${i.encryptAssignmentId}","itemId":"${itemId}","assistFlag":true,"babelChannel":"ttt1","isJdApp":"1","isWx":"0"}`, 'form': `appid=jd-super-market&t=1742122986378&functionId=atop_channel_complete_task&client=m&body={"bizCode":"cn_retail_3c_digital","scenario":"sign","assignmentType":"${i.assignmentType}","encryptAssignmentId":"${i.encryptAssignmentId}","itemId":"${itemId}","assistFlag":true,"babelChannel":"ttt1","isJdApp":"0","isWx":"1"}`,
user, user,
algo: { algo: {
appId: '51113' appId: '51113'
@ -128,7 +108,6 @@ export class Main extends Template {
for (let j of extra.slice(0, i.assignmentTimesLimit)) { for (let j of extra.slice(0, i.assignmentTimesLimit)) {
if (['shoppingActivity', 'productsInfo', 'browseShop'].includes(extraType)) { if (['shoppingActivity', 'productsInfo', 'browseShop'].includes(extraType)) {
let d = await this.curl({ let d = await this.curl({
'url': `https://api.m.jd.com/client.action`,
'form': `appid=jd-super-market&body=${this.dumps( 'form': `appid=jd-super-market&body=${this.dumps(
{ {
"bizCode": "cn_retail_3c_digital", "bizCode": "cn_retail_3c_digital",
@ -139,21 +118,23 @@ export class Main extends Template {
"actionType": 1, "actionType": 1,
"babelChannel": "ttt1", "babelChannel": "ttt1",
"isJdApp": "0", "isJdApp": "0",
"isWx": "0" "isWx": "1"
} }
)}&sign=11&t=1653132222710&client=m&functionId=atop_channel_complete_task`, )}&sign=11&t=1653132222710&client=m&functionId=atop_channel_complete_task`,
user, user,
algo: { algo: {
appId: '51113' appId: '51113',
}, }
// ciphers: 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384'
} }
) )
p.log(this.haskey(d, 'data.msg') || this.haskey(d, 'message')) let msg = this.haskey(d, ['data.msg', 'message']) || "'"
p.log(msg)
if (msg.includes('火爆')) {
return
}
await this.wait((i.ext.waitDuration || 0) * 1000 + 500) await this.wait((i.ext.waitDuration || 0) * 1000 + 500)
} }
let s = await this.curl({ let s = await this.curl({
'url': `https://api.m.jd.com/client.action`,
'form': `appid=jd-super-market&body=${this.dumps( 'form': `appid=jd-super-market&body=${this.dumps(
{ {
"bizCode": "cn_retail_3c_digital", "bizCode": "cn_retail_3c_digital",
@ -167,16 +148,16 @@ export class Main extends Template {
} }
)}&sign=11&t=1653132222710&client=m&functionId=atop_channel_complete_task`, )}&sign=11&t=1653132222710&client=m&functionId=atop_channel_complete_task`,
user, algo: { user, algo: {
appId: '51113' appId: '51113',
}, },
// ciphers: 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384'
} }
) )
let message = this.haskey(s, ['data.msg', 'message']) || ""
p.log(i.assignmentName, this.haskey(s, 'data.msg') || this.haskey(s, 'message')) p.log(i.assignmentName, this.haskey(s, 'data.msg') || this.haskey(s, 'message'))
if (this.haskey(s, 'message', '风险等级未通过')) { if (this.haskey(s, 'message', '风险等级未通过')) {
return return
} }
if (this.haskey(s, 'message', '活动太火爆了')) { if (message.includes("火爆")) {
break break
} }
if (this.haskey(s, 'data.doTaskRewardsInfo.successRewards')) { if (this.haskey(s, 'data.doTaskRewardsInfo.successRewards')) {
@ -190,13 +171,47 @@ export class Main extends Template {
await this.wait(1000) await this.wait(1000)
} }
} catch (e) { } catch (e) {
p.log(e)
} }
} }
else { else {
} }
} }
} }
let calendar = await this.curl({
'url': `https://api.m.jd.com/atop_channel_sign_calendar`,
'form': `appid=jd-super-market&t=1748931681904&functionId=atop_channel_sign_calendar&client=m&body={"bizCode":"cn_retail_3c_digital","scenario":"sign","babelChannel":"ttt32","isJdApp":"1","isWx":"0"}&clientVersion=15.1.50`,
user
}
)
if (this.haskey(calendar, 'data.floorData.items')) {
for (let i of calendar.data.floorData.items) {
if (i.signToken) {
let sign = await this.curl({
'url': `https://api.m.jd.com/atop_channel_sign_in`,
'form': `appid=jd-super-market&t=1713230766545&functionId=atop_channel_sign_in&client=m&body={"signToken":"${i.signToken}","channelFollowStatus":1,"bizCode":"cn_retail_3c_digital","scenario":"sign","babelChannel":"ttt1","isJdApp":"1","isWx":"0"}`,
user,
algo: {
appId: 'b8fc7',
expire: {
"code": "11001"
}
}
}
)
if (this.haskey(sign, 'success')) {
status = 1
p.log(`签到成功`)
for (let i of sign.data.rewards) {
p.log(`获得: ${i.rewardDesc}`)
}
}
else if (this.haskey(sign, "code", "14013")) {
p.log(`您今天已经签过到了`)
status = 1
}
else {
p.log(this.haskey(sign, 'message') || sign)
} }
} }
} }
@ -206,5 +221,4 @@ export class Main extends Template {
} }
} }
} }
}

View File

@ -20,8 +20,6 @@ export class Main extends Template {
this.dict[user] = itemId this.dict[user] = itemId
} }
} }
this.algo.bill = function() {
}
} }
async main(p) { async main(p) {
@ -173,7 +171,6 @@ export class Main extends Template {
await this.wait(1000) await this.wait(1000)
} }
} catch (e) { } catch (e) {
p.log(e)
} }
} }
else { else {