守护关卡偷红包

This commit is contained in:
any
2021-01-25 21:34:02 +08:00
parent 02bbf4a6d8
commit a2adab0731

View File

@@ -89,18 +89,25 @@ const pkInviteCodes = [
.finally(() => { .finally(() => {
$.done(); $.done();
}) })
async function jdNian() { async function jdNian() {
try { try {
await getHomeData() await getHomeData()
if (!$.secretp) return if (!$.secretp) return
let hour = new Date().getUTCHours() let hour = new Date().getUTCHours()
if (1<=hour && hour<=14) { if (1 <= hour && hour < 12) {
// 北京时间9点-22点做pk任务 // 北京时间9点-20点
$.hasGroup = false $.hasGroup = false
await pkTaskDetail() await pkTaskDetail()
if ($.hasGroup) await pkInfo() if ($.hasGroup) await pkInfo()
await helpFriendsPK() await helpFriendsPK()
} }
if (12 <= hour && hour < 14) {
// 北京时间20点-22点
$.hasGroup = false
await pkTaskStealDetail()
if ($.hasGroup) await pkInfo()
}
await $.wait(2000) await $.wait(2000)
await killCouponList() await killCouponList()
await $.wait(2000) await $.wait(2000)
@@ -119,6 +126,7 @@ async function jdNian() {
$.logErr(e) $.logErr(e)
} }
} }
function encode(data, aa, extraData) { function encode(data, aa, extraData) {
const temp = { const temp = {
"extraData": JSON.stringify(extraData), "extraData": JSON.stringify(extraData),
@@ -127,9 +135,11 @@ function encode(data, aa, extraData) {
} }
return {"ss": (JSON.stringify(temp))}; return {"ss": (JSON.stringify(temp))};
} }
function getRnd() { function getRnd() {
return Math.floor(1e6 * Math.random()).toString(); return Math.floor(1e6 * Math.random()).toString();
} }
function showMsg() { function showMsg() {
return new Promise(resolve => { return new Promise(resolve => {
console.log('任务已做完!\n如有未完成的任务请多执行几次。注目前入会任务不会做') console.log('任务已做完!\n如有未完成的任务请多执行几次。注目前入会任务不会做')
@@ -145,6 +155,7 @@ function showMsg() {
resolve() resolve()
}) })
} }
async function helpFriends() { async function helpFriends() {
for (let code of $.newShareCodes) { for (let code of $.newShareCodes) {
if (!code) continue if (!code) continue
@@ -152,6 +163,7 @@ async function helpFriends() {
await $.wait(1000) await $.wait(1000)
} }
} }
async function helpFriendsPK() { async function helpFriendsPK() {
for (let code of $.newShareCodesPk) { for (let code of $.newShareCodesPk) {
if (!code) continue if (!code) continue
@@ -160,6 +172,7 @@ async function helpFriendsPK() {
await $.wait(1000) await $.wait(1000)
} }
} }
async function doTask() { async function doTask() {
for (let item of $.taskVos) { for (let item of $.taskVos) {
if (item.taskType === 14) { if (item.taskType === 14) {
@@ -173,8 +186,7 @@ async function doTask() {
} else if (item.status === 2) { } else if (item.status === 2) {
console.log(`${item.taskName}已做完`) console.log(`${item.taskName}已做完`)
} }
} } else if (item.taskType === 3 || item.taskType === 26) {
else if (item.taskType === 3 || item.taskType === 26) {
if (item.shoppingActivityVos) { if (item.shoppingActivityVos) {
if (item.status === 1) { if (item.status === 1) {
console.log(`准备做此任务:${item.taskName}`) console.log(`准备做此任务:${item.taskName}`)
@@ -188,8 +200,7 @@ async function doTask() {
console.log(`${item.taskName}已做完`) console.log(`${item.taskName}已做完`)
} }
} }
} } else if (item.taskType === 9) {
else if (item.taskType === 9) {
if (item.status === 1) { if (item.status === 1) {
console.log(`准备做此任务:${item.taskName}`) console.log(`准备做此任务:${item.taskName}`)
for (let task of item.shoppingActivityVos) { for (let task of item.shoppingActivityVos) {
@@ -201,8 +212,7 @@ async function doTask() {
} else if (item.status === 2) { } else if (item.status === 2) {
console.log(`${item.taskName}已做完`) console.log(`${item.taskName}已做完`)
} }
} } else if (item.taskType === 7) {
else if (item.taskType === 7) {
if (item.status === 1) { if (item.status === 1) {
console.log(`准备做此任务:${item.taskName}`) console.log(`准备做此任务:${item.taskName}`)
for (let task of item.browseShopVo) { for (let task of item.browseShopVo) {
@@ -250,8 +260,7 @@ function getFeedDetail(body={}) {
if (data.data.result.addProductVos) { if (data.data.result.addProductVos) {
for (let vo of data.data.result.addProductVos) { for (let vo of data.data.result.addProductVos) {
if (vo['status'] === 1) { if (vo['status'] === 1) {
for(let i=0;i<vo.productInfoVos.length&&i+vo['times']<vo['maxTimes'];++i) for (let i = 0; i < vo.productInfoVos.length && i + vo['times'] < vo['maxTimes']; ++i) {
{
let bo = vo.productInfoVos[i] let bo = vo.productInfoVos[i]
await collectScore(vo['taskId'], bo['itemId']) await collectScore(vo['taskId'], bo['itemId'])
await $.wait(2000) await $.wait(2000)
@@ -262,8 +271,7 @@ function getFeedDetail(body={}) {
if (data.data.result.taskVos) { if (data.data.result.taskVos) {
for (let vo of data.data.result.taskVos) { for (let vo of data.data.result.taskVos) {
if (vo['status'] === 1) { if (vo['status'] === 1) {
for(let i=0;i<vo.productInfoVos.length&&i+vo['times']<vo['maxTimes'];++i) for (let i = 0; i < vo.productInfoVos.length && i + vo['times'] < vo['maxTimes']; ++i) {
{
let bo = vo.productInfoVos[i] let bo = vo.productInfoVos[i]
await collectScore(vo['taskId'], bo['itemId']) await collectScore(vo['taskId'], bo['itemId'])
await $.wait(2000) await $.wait(2000)
@@ -283,6 +291,7 @@ function getFeedDetail(body={}) {
}) })
}) })
} }
function getHomeData(info = false) { function getHomeData(info = false) {
return new Promise((resolve) => { return new Promise((resolve) => {
$.post(taskPostUrl('nian_getHomeData'), async (err, resp, data) => { $.post(taskPostUrl('nian_getHomeData'), async (err, resp, data) => {
@@ -316,8 +325,7 @@ function getHomeData(info=false) {
await $.wait(2000) await $.wait(2000)
await raise() await raise()
} }
} } else {
else{
$.secretp = null $.secretp = null
console.log(`账号被风控,无法参与活动`) console.log(`账号被风控,无法参与活动`)
message += `账号被风控,无法参与活动\n` message += `账号被风控,无法参与活动\n`
@@ -331,6 +339,7 @@ function getHomeData(info=false) {
}) })
}) })
} }
function collectProduceScore(taskId = "collectProducedCoin") { function collectProduceScore(taskId = "collectProducedCoin") {
let temp = { let temp = {
"taskId": taskId, "taskId": taskId,
@@ -368,6 +377,7 @@ function collectProduceScore(taskId= "collectProducedCoin") {
}) })
}) })
} }
function collectScore(taskId, itemId, actionType = null, inviteId = null, shopSign = null) { function collectScore(taskId, itemId, actionType = null, inviteId = null, shopSign = null) {
let temp = { let temp = {
"taskId": taskId, "taskId": taskId,
@@ -416,8 +426,7 @@ function collectScore(taskId,itemId,actionType=null,inviteId=null,shopSign=null)
} }
} }
// $.userInfo = data.data.result.userInfo; // $.userInfo = data.data.result.userInfo;
} } else {
else{
console.log(data.data.bizMsg) console.log(data.data.bizMsg)
} }
} }
@@ -431,6 +440,7 @@ function collectScore(taskId,itemId,actionType=null,inviteId=null,shopSign=null)
}) })
}) })
} }
function pkCollectScore(taskId, itemId, actionType = null, inviteId = null, shopSign = null) { function pkCollectScore(taskId, itemId, actionType = null, inviteId = null, shopSign = null) {
let temp = { let temp = {
"taskId": taskId, "taskId": taskId,
@@ -479,8 +489,7 @@ function pkCollectScore(taskId,itemId,actionType=null,inviteId=null,shopSign=nul
} }
} }
// $.userInfo = data.data.result.userInfo; // $.userInfo = data.data.result.userInfo;
} } else {
else{
console.log(data.data.bizMsg) console.log(data.data.bizMsg)
} }
} }
@@ -494,6 +503,7 @@ function pkCollectScore(taskId,itemId,actionType=null,inviteId=null,shopSign=nul
}) })
}) })
} }
function doTask2(taskToken) { function doTask2(taskToken) {
let body = { let body = {
"dataSource": "newshortAward", "dataSource": "newshortAward",
@@ -523,6 +533,7 @@ function doTask2(taskToken) {
}) })
}) })
} }
function raise(taskId = "nian_raise") { function raise(taskId = "nian_raise") {
let temp = { let temp = {
"taskId": taskId, "taskId": taskId,
@@ -560,6 +571,7 @@ function raise(taskId= "nian_raise") {
}) })
}) })
} }
function getTaskList(body = {}) { function getTaskList(body = {}) {
return new Promise(resolve => { return new Promise(resolve => {
$.post(taskPostUrl("nian_getTaskDetail", body, "nian_getTaskDetail"), async (err, resp, data) => { $.post(taskPostUrl("nian_getTaskDetail", body, "nian_getTaskDetail"), async (err, resp, data) => {
@@ -587,6 +599,7 @@ function getTaskList(body={}) {
}) })
}) })
} }
function getFriendData(inviteId) { function getFriendData(inviteId) {
return new Promise((resolve) => { return new Promise((resolve) => {
$.post(taskPostUrl('nian_getHomeData', {"inviteId": inviteId}), async (err, resp, data) => { $.post(taskPostUrl('nian_getHomeData', {"inviteId": inviteId}), async (err, resp, data) => {
@@ -609,6 +622,7 @@ function getFriendData(inviteId) {
}) })
}) })
} }
function map() { function map() {
return new Promise(resolve => { return new Promise(resolve => {
$.post(taskPostUrl("nian_myMap", {}, "nian_myMap"), async (err, resp, data) => { $.post(taskPostUrl("nian_myMap", {}, "nian_myMap"), async (err, resp, data) => {
@@ -637,8 +651,15 @@ function map() {
}) })
}) })
} }
function queryMaterials() { function queryMaterials() {
let body = {"qryParam":"[{\"type\":\"advertGroup\",\"mapTo\":\"viewLogo\",\"id\":\"05149412\"},{\"type\":\"advertGroup\",\"mapTo\":\"bottomLogo\",\"id\":\"05149413\"}]","activityId":"2cKMj86srRdhgWcKonfExzK4ZMBy","pageId":"","reqSrc":"","applyKey":"21beast"} let body = {
"qryParam": "[{\"type\":\"advertGroup\",\"mapTo\":\"viewLogo\",\"id\":\"05149412\"},{\"type\":\"advertGroup\",\"mapTo\":\"bottomLogo\",\"id\":\"05149413\"}]",
"activityId": "2cKMj86srRdhgWcKonfExzK4ZMBy",
"pageId": "",
"reqSrc": "",
"applyKey": "21beast"
}
return new Promise(resolve => { return new Promise(resolve => {
$.post(taskPostUrl("qryCompositeMaterials", body, "qryCompositeMaterials"), async (err, resp, data) => { $.post(taskPostUrl("qryCompositeMaterials", body, "qryCompositeMaterials"), async (err, resp, data) => {
try { try {
@@ -688,8 +709,7 @@ function shopLotteryInfo(shopSign) {
console.log(`去做${vo.taskName}任务`) console.log(`去做${vo.taskName}任务`)
await $.wait(2000) await $.wait(2000)
await collectScore(vo.taskId, vo.simpleRecordInfoVo.itemId, null, null, shopSign) await collectScore(vo.taskId, vo.simpleRecordInfoVo.itemId, null, null, shopSign)
} } else if (vo.taskType === 3 || vo.taskType === 26) {
else if (vo.taskType === 3 || vo.taskType === 26) {
if (vo.shoppingActivityVos) { if (vo.shoppingActivityVos) {
if (vo.status === 1) { if (vo.status === 1) {
console.log(`准备做此任务:${vo.taskName}`) console.log(`准备做此任务:${vo.taskName}`)
@@ -722,6 +742,7 @@ function shopLotteryInfo(shopSign) {
}) })
}) })
} }
function doShopLottery(shopSign) { function doShopLottery(shopSign) {
let body = {"shopSign": shopSign} let body = {"shopSign": shopSign}
return new Promise(resolve => { return new Promise(resolve => {
@@ -769,9 +790,19 @@ function pkInfo() {
if (data.code === 0 && data.data && data.data.bizCode === 0) { if (data.code === 0 && data.data && data.data.bizCode === 0) {
console.log(`\n您的好友PK助力码为${data.data.result.groupInfo.groupAssistInviteId}\n`) console.log(`\n您的好友PK助力码为${data.data.result.groupInfo.groupAssistInviteId}\n`)
let info = data.data.result.groupPkInfo let info = data.data.result.groupPkInfo
console.log(`当前关卡:${info.dayAward}元红包,完成进度 ${info.dayTotalValue}/${info.dayTargetSell}`) if (info.dayAward)
} console.log(`白天关卡:${info.dayAward}元红包,完成进度 ${info.dayTotalValue}/${info.dayTargetSell}`)
else { else {
function secondToDate(result) {
var h = Math.floor(result / 3600);
var m = Math.floor((result / 60 % 60));
var s = Math.floor((result % 60));
return h + "小时" + m + "分钟" + s + "秒";
}
console.log(`守护关卡:${info.guardAward}元红包,剩余守护时间:${secondToDate(info.guardTime / 5)}`)
}
} else {
$.group = false $.group = false
console.log(`获取组队信息失败,请检查`) console.log(`获取组队信息失败,请检查`)
} }
@@ -785,6 +816,42 @@ function pkInfo() {
}) })
}) })
} }
function pkTaskStealDetail() {
return new Promise(resolve => {
$.post(taskPostUrl("nian_pk_getStealForms", {}, "nian_pk_getStealForms"), async (err, resp, data) => {
try {
if (err) {
console.log(`${JSON.stringify(err)}`)
console.log(`${$.name} API请求失败请检查网路重试`)
} else {
if (safeGet(data)) {
data = JSON.parse(data);
if (data.code === 0 && data.data && data.data.bizCode === 0) {
$.hasGroup = true
await $.wait(2000)
for (let i = 1; i < data.data.result.stealGroups.length; ++i) {
let item = data.data.result.stealGroups[i]
if (item.stolen === 0) {
console.log(`去偷${item.name}的红包`)
await pkStealGroup(item.id)
await $.wait(2000)
}
}
} else {
console.log(`组队尚未开启,请先去开启组队或是加入队伍!`)
}
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve();
}
})
})
}
function pkTaskDetail() { function pkTaskDetail() {
return new Promise(resolve => { return new Promise(resolve => {
$.post(taskPostUrl("nian_pk_getTaskDetail", {}, "nian_pk_getTaskDetail"), async (err, resp, data) => { $.post(taskPostUrl("nian_pk_getTaskDetail", {}, "nian_pk_getTaskDetail"), async (err, resp, data) => {
@@ -815,8 +882,7 @@ function pkTaskDetail() {
} }
} }
} }
} } else {
else{
console.log(`组队尚未开启,请先去开启组队或是加入队伍!`) console.log(`组队尚未开启,请先去开启组队或是加入队伍!`)
} }
} }
@@ -829,6 +895,7 @@ function pkTaskDetail() {
}) })
}) })
} }
function pkAssignGroup(inviteId) { function pkAssignGroup(inviteId) {
let temp = { let temp = {
"confirmFlag": 1, "confirmFlag": 1,
@@ -855,8 +922,7 @@ function pkAssignGroup(inviteId) {
data = JSON.parse(data); data = JSON.parse(data);
if (data.data && data.data.bizMsg) { if (data.data && data.data.bizMsg) {
console.log(data.data.bizMsg) console.log(data.data.bizMsg)
} } else {
else {
console.log(`助力失败,未知错误:${JSON.stringify(data)}`) console.log(`助力失败,未知错误:${JSON.stringify(data)}`)
$.canhelp = false $.canhelp = false
} }
@@ -870,6 +936,46 @@ function pkAssignGroup(inviteId) {
}) })
}) })
} }
function pkStealGroup(stealId) {
let temp = {
"stealId": stealId,
}
const extraData = {
"jj": 6,
"buttonid": "jmdd-react-smash_0",
"sceneid": "homePageh5",
"appid": '50073'
}
let body = {
...encode(temp, $.secretp, extraData),
stealId: stealId
}
return new Promise(resolve => {
$.post(taskPostUrl("nian_pk_doSteal", body, "nian_pk_doSteal"), async (err, resp, data) => {
try {
if (err) {
console.log(`${JSON.stringify(err)}`)
console.log(`${$.name} API请求失败请检查网路重试`)
} else {
if (safeGet(data)) {
data = JSON.parse(data);
if (data.data && data.data.bizMsg) {
console.log(data.data.bizMsg)
} else {
console.log(`偷取失败,未知错误:${JSON.stringify(data)}`)
}
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve();
}
})
})
}
function killCouponList() { function killCouponList() {
return new Promise(resolve => { return new Promise(resolve => {
$.post(taskPostUrl("nian_killCouponList", {}, "nian_killCouponList"), async (err, resp, data) => { $.post(taskPostUrl("nian_killCouponList", {}, "nian_killCouponList"), async (err, resp, data) => {
@@ -900,6 +1006,7 @@ function killCouponList() {
}) })
}) })
} }
function killCoupon(skuId) { function killCoupon(skuId) {
let temp = { let temp = {
"skuId": skuId, "skuId": skuId,
@@ -939,10 +1046,14 @@ function killCoupon(skuId) {
}) })
}) })
} }
function readShareCode() { function readShareCode() {
console.log(`开始`) console.log(`开始`)
return new Promise(async resolve => { return new Promise(async resolve => {
$.get({url: `https://code.chiang.fun/api/v1/jd/jdnian/read/${randomCount}/`, 'timeout': 10000}, (err, resp, data) => { $.get({
url: `https://code.chiang.fun/api/v1/jd/jdnian/read/${randomCount}/`,
'timeout': 10000
}, (err, resp, data) => {
try { try {
if (err) { if (err) {
console.log(`${JSON.stringify(err)}`) console.log(`${JSON.stringify(err)}`)
@@ -963,10 +1074,14 @@ function readShareCode() {
resolve() resolve()
}) })
} }
function readShareCodePk() { function readShareCodePk() {
console.log(`开始`) console.log(`开始`)
return new Promise(async resolve => { return new Promise(async resolve => {
$.get({url: `http://jd.turinglabs.net/api/v2/jd/nian_pk/read/${randomCount}/`, 'timeout': 10000}, (err, resp, data) => { $.get({
url: `http://jd.turinglabs.net/api/v2/jd/nian_pk/read/${randomCount}/`,
'timeout': 10000
}, (err, resp, data) => {
try { try {
if (err) { if (err) {
console.log(`${JSON.stringify(err)}`) console.log(`${JSON.stringify(err)}`)
@@ -987,6 +1102,7 @@ function readShareCodePk() {
resolve() resolve()
}) })
} }
//格式化助力码 //格式化助力码
function shareCodesFormat() { function shareCodesFormat() {
return new Promise(async resolve => { return new Promise(async resolve => {
@@ -1027,6 +1143,7 @@ function shareCodesFormatPk() {
resolve(); resolve();
}) })
} }
function requireConfig() { function requireConfig() {
return new Promise(resolve => { return new Promise(resolve => {
console.log(`开始获取${$.name}配置文件\n`); console.log(`开始获取${$.name}配置文件\n`);
@@ -1087,6 +1204,7 @@ function taskPostUrl(function_id, body = {}, function_id2) {
} }
} }
} }
function TotalBean() { function TotalBean() {
return new Promise(async resolve => { return new Promise(async resolve => {
const options = { const options = {
@@ -1127,6 +1245,7 @@ function TotalBean() {
}) })
}) })
} }
function safeGet(data) { function safeGet(data) {
try { try {
if (typeof JSON.parse(data) == "object") { if (typeof JSON.parse(data) == "object") {
@@ -1138,6 +1257,7 @@ function safeGet(data) {
return false; return false;
} }
} }
function jsonParse(str) { function jsonParse(str) {
if (typeof str == "string") { if (typeof str == "string") {
try { try {