更新于 08-06 11:01

This commit is contained in:
root
2021-08-06 11:01:17 -04:00
parent cfb981e2f2
commit f0737cab87
27 changed files with 7153 additions and 5842 deletions

View File

@@ -24,7 +24,7 @@ const $ = new Env('京东赚赚');
const notify = $.isNode() ? require('./sendNotify') : '';
//Node.js用户请在jdCookie.js处填写京东ck;
const jdCookieNode = $.isNode() ? require('./jdCookie.js') : '';
let helpAuthor=true; // 帮助作者
// let helpAuthor=true; // 帮助作者
const randomCount = $.isNode() ? 0 : 5;
let jdNotify = true; // 是否关闭通知false打开通知推送true关闭通知推送
//IOS等用户直接用NobyDa的jd cookie
@@ -39,15 +39,18 @@ if ($.isNode()) {
cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item);
}
const JD_API_HOST = 'https://api.m.jd.com/client.action';
const inviteCodes = []
// const inviteCodes = [
// `ATGEC3-fsrn13aiaEqiM@AUWE5maSSnzFeDmH4iH0elA@ATGEC3-fsrn13aiaEqiM@AUWE5m6WUmDdZC2mr1XhJlQ@AUWE5m_jEzjJZDTKr3nwfkg@A06fNSRc4GIqY38pMBeLKQE2InZA@AUWE5mf7ExDZdDmH7j3wfkA@AUWE5m6jBy2cNAWX7j31Pxw@AUWE5mK2UnDddDTX61S1Mkw@AUWE5mavGyGZdWzP5iCoZwQ@S5KkcRUxL9FKDJh7ylvMLcA@S5KkcRx0Q_AaCdRr1xf8DIQ@S5KkcRksZpgDSIBj3xvADdQ@Sv_52Qxge81HeJB2b1A@S5KkcPFd_vD2uSkCi3YhX@S5KkcGGhOkCWwQHqo0p5M@S5KkcRBYQoFSFdByik6JbfQ@Sv_hzQhwZ8FbUIRib1A`,
// `ATGEC3-fsrn13aiaEqiM@AUWE5maSSnzFeDmH4iH0elA@ATGEC3-fsrn13aiaEqiM@AUWE5m6WUmDdZC2mr1XhJlQ@AUWE5m_jEzjJZDTKr3nwfkg@A06fNSRc4GIqY38pMBeLKQE2InZA@AUWE5m6_BmTUPAGH42SpOkg@AUWE53NTIs3V8YBqthQMI@AUWE5m6yVxTJcWjWr3nRIlw@S5KkcRUxL9FKDJh7ylvMLcA@S5KkcRx0Q_AaCdRr1xf8DIQ@S5KkcRksZpgDSIBj3xvADdQ@Sv_52Qxge81HeJB2b1A@S5KkcPFd_vD2uSkCi3YhX@S5KkcGGhOkCWwQHqo0p5M@S5KkcRBYQoFSFdByik6JbfQ@Sv_hzQhwZ8FbUIRib1A`
// ]
let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() * 60 * 1000 + 8 * 60 * 60 * 1000);
!(async () => {
$.tuanList = [];
$.authorTuanList = [];
await requireConfig();
// $.tuanList = [];
// $.authorTuanList = [];
// await requireConfig();
// if (helpAuthor) await getAuthorShareCode('http://qr6pzoy01.hn-bkt.clouddn.com/jd_zz.json');
if (helpAuthor) await getAuthorShareCode('https://raw.githubusercontent.com/gitupdate/updateTeam/master/shareCodes/jd_zz.json');
if (helpAuthor) await getAuthorShareCode('https://raw.fastgit.org/zero205/updateTeam/master/shareCodes/jd_zz.json');
// if (helpAuthor) await getAuthorShareCode('https://raw.githubusercontent.com/gitupdate/updateTeam/master/shareCodes/jd_zz.json');
// if (helpAuthor) await getAuthorShareCode('https://raw.fastgit.org/zero205/updateTeam/master/shareCodes/jd_zz.json');
if (!cookiesArr[0]) {
$.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', {"open-url": "https://bean.m.jd.com/bean/signIndex.action"});
return;
@@ -70,7 +73,7 @@ let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() *
}
continue
}
await shareCodesFormat()
// await shareCodesFormat()
await jdWish()
}
}
@@ -80,30 +83,30 @@ let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() *
await notify.sendNotify($.name, allMessage);
}
}
console.log(`\n\n开始账号内部互助 【赚京豆(微信小程序)-瓜分京豆】活动(优先内部账号互助(需内部cookie数量大于${$.assistNum || 4}个)如有剩余助力次数则给作者lxk0301助力)\n`)
for (let i = 0; i < cookiesArr.length; i++) {
$.canHelp = true
if (cookiesArr[i]) {
cookie = cookiesArr[i];
$.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1])
if ($.canHelp && cookiesArr.length > $.assistNum || 4) {
console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动,优先内部账号互助`)
for (let j = 0; j < $.tuanList.length; ++j) {
console.log(`账号 ${$.UserName} 开始给 【${$.tuanList[j]['assistedPinEncrypted']}】助力`)
await helpFriendTuan($.tuanList[j])
if(!$.canHelp) break
}
}
if ($.canHelp) {
console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动如有剩余则给作者lxk0301助力`)
for (let j = 0; j < $.authorTuanList.length; ++j) {
console.log(`账号 ${$.UserName} 开始给作者lxk0301 ${$.authorTuanList[j]['assistedPinEncrypted']}助力`)
await helpFriendTuan($.authorTuanList[j])
if(!$.canHelp) break
}
}
}
}
// console.log(`\n\n开始账号内部互助 【赚京豆(微信小程序)-瓜分京豆】活动(优先内部账号互助(需内部cookie数量大于${$.assistNum || 4}个)如有剩余助力次数则给作者lxk0301助力)\n`)
// for (let i = 0; i < cookiesArr.length; i++) {
// $.canHelp = true
// if (cookiesArr[i]) {
// cookie = cookiesArr[i];
// $.UserName = decodeURIComponent(cookie.match(/pt_pin=([^; ]+)(?=;?)/) && cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1])
// if ($.canHelp && cookiesArr.length > $.assistNum || 4) {
// console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动,优先内部账号互助`)
// for (let j = 0; j < $.tuanList.length; ++j) {
// console.log(`账号 ${$.UserName} 开始给 【${$.tuanList[j]['assistedPinEncrypted']}】助力`)
// await helpFriendTuan($.tuanList[j])
// if(!$.canHelp) break
// }
// }
// if ($.canHelp) {
// console.log(`开始账号内部互助 赚京豆-瓜分京豆 活动如有剩余则给作者lxk0301助力`)
// for (let j = 0; j < $.authorTuanList.length; ++j) {
// console.log(`账号 ${$.UserName} 开始给作者lxk0301 ${$.authorTuanList[j]['assistedPinEncrypted']}助力`)
// await helpFriendTuan($.authorTuanList[j])
// if(!$.canHelp) break
// }
// }
// }
// }
})()
.catch((e) => {
$.log('', `${$.name}, 失败! 原因: ${e}!`, '')
@@ -114,19 +117,19 @@ let nowTimes = new Date(new Date().getTime() + new Date().getTimezoneOffset() *
async function jdWish() {
$.bean = 0
$.tuan = null
$.hasOpen = false;
$.assistStatus = 0;
// $.tuan = null
// $.hasOpen = false;
// $.assistStatus = 0;
await getTaskList(true)
await getUserTuanInfo()
if (!$.tuan && $.assistStatus === 3 && $.canStartNewAssist) {
console.log(`准备再次开团`)
await openTuan()
if ($.hasOpen) await getUserTuanInfo()
}
if ($.tuan && $.tuan.hasOwnProperty('assistedPinEncrypted') && $.assistStatus !== 3) $.tuanList.push($.tuan)
// await getUserTuanInfo()
// if (!$.tuan && $.assistStatus === 3 && $.canStartNewAssist) {
// console.log(`准备再次开团`)
// await openTuan()
// if ($.hasOpen) await getUserTuanInfo()
// }
// if ($.tuan && $.tuan.hasOwnProperty('assistedPinEncrypted') && $.assistStatus !== 3) $.tuanList.push($.tuan)
await helpFriends()
// await helpFriends()
await getUserInfo()
$.nowBean = parseInt($.totalBeanNum)
$.nowNum = parseInt($.totalNum)
@@ -164,143 +167,143 @@ function showMsg() {
resolve();
})
}
function getAuthorShareCode(url) {
return new Promise(resolve => {
const options = {
url: `${url}?${new Date()}`, "timeout": 10000, headers: {
"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1 Edg/87.0.4280.88"
}
};
if ($.isNode() && process.env.TG_PROXY_HOST && process.env.TG_PROXY_PORT) {
const tunnel = require("tunnel");
const agent = {
https: tunnel.httpsOverHttp({
proxy: {
host: process.env.TG_PROXY_HOST,
port: process.env.TG_PROXY_PORT * 1
}
})
}
Object.assign(options, { agent })
}
$.get(options, async (err, resp, data) => {
try {
if (err) {
} else {
$.authorTuanList = $.authorTuanList.concat(JSON.parse(data))
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve();
}
})
})
}
function helpFriendTuan(body) {
return new Promise(resolve => {
$.get(taskTuanUrl("vvipclub_distributeBean_assist", body), 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.success) {
console.log('助力结果:助力成功\n')
} else {
if (data.resultCode === '9200008') console.log('助力结果:不能助力自己\n')
else if (data.resultCode === '9200011') console.log('助力结果:已经助力过\n')
else if (data.resultCode === '2400205') console.log('助力结果:团已满\n')
else if (data.resultCode === '2400203') {console.log('助力结果:助力次数已耗尽\n');$.canHelp = false}
else console.log(`助力结果:未知错误\n`)
}
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve(data);
}
})
})
}
// function getAuthorShareCode(url) {
// return new Promise(resolve => {
// const options = {
// url: `${url}?${new Date()}`, "timeout": 10000, headers: {
// "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1 Edg/87.0.4280.88"
// }
// };
// if ($.isNode() && process.env.TG_PROXY_HOST && process.env.TG_PROXY_PORT) {
// const tunnel = require("tunnel");
// const agent = {
// https: tunnel.httpsOverHttp({
// proxy: {
// host: process.env.TG_PROXY_HOST,
// port: process.env.TG_PROXY_PORT * 1
// }
// })
// }
// Object.assign(options, { agent })
// }
// $.get(options, async (err, resp, data) => {
// try {
// if (err) {
// } else {
// $.authorTuanList = $.authorTuanList.concat(JSON.parse(data))
// }
// } catch (e) {
// $.logErr(e, resp)
// } finally {
// resolve();
// }
// })
// })
// }
// function helpFriendTuan(body) {
// return new Promise(resolve => {
// $.get(taskTuanUrl("vvipclub_distributeBean_assist", body), 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.success) {
// console.log('助力结果:助力成功\n')
// } else {
// if (data.resultCode === '9200008') console.log('助力结果:不能助力自己\n')
// else if (data.resultCode === '9200011') console.log('助力结果:已经助力过\n')
// else if (data.resultCode === '2400205') console.log('助力结果:团已满\n')
// else if (data.resultCode === '2400203') {console.log('助力结果:助力次数已耗尽\n');$.canHelp = false}
// else console.log(`助力结果:未知错误\n`)
// }
// }
// }
// } catch (e) {
// $.logErr(e, resp)
// } finally {
// resolve(data);
// }
// })
// })
// }
function getUserTuanInfo() {
let body = {"paramData": {"channel": "FISSION_BEAN"}}
return new Promise(resolve => {
$.get(taskTuanUrl("distributeBeanActivityInfo", body), 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['success']) {
$.log(`\n\n当前【赚京豆(微信小程序)-瓜分京豆】能否再次开团: ${data.data.canStartNewAssist ? '可以' : '否'}`)
if (data.data.assistStatus === 1 && !data.data.canStartNewAssist) {
console.log(`已开团(未达上限),但团成员人未满\n\n`)
} else if (data.data.assistStatus === 3 && data.data.canStartNewAssist) {
console.log(`已开团(未达上限),团成员人已满\n\n`)
} else if (data.data.assistStatus === 3 && !data.data.canStartNewAssist) {
console.log(`今日开团已达上限,且当前团成员人已满\n\n`)
}
if (data.data && !data.data.canStartNewAssist) {
$.tuan = {
"activityIdEncrypted": data.data.id,
"assistStartRecordId": data.data.assistStartRecordId,
"assistedPinEncrypted": data.data.encPin,
"channel": "FISSION_BEAN"
}
}
$.tuanActId = data.data.id;
$.assistNum = data['data']['assistNum'] || 4;
$.assistStatus = data['data']['assistStatus'];
$.canStartNewAssist = data['data']['canStartNewAssist'];
} else {
$.tuan = true;//活动火爆
console.log(`获取【赚京豆(微信小程序)-瓜分京豆】活动信息失败 ${JSON.stringify(data)}\n`)
}
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve(data);
}
})
})
}
// function getUserTuanInfo() {
// let body = {"paramData": {"channel": "FISSION_BEAN"}}
// return new Promise(resolve => {
// $.get(taskTuanUrl("distributeBeanActivityInfo", body), 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['success']) {
// $.log(`\n\n当前【赚京豆(微信小程序)-瓜分京豆】能否再次开团: ${data.data.canStartNewAssist ? '可以' : '否'}`)
// if (data.data.assistStatus === 1 && !data.data.canStartNewAssist) {
// console.log(`已开团(未达上限),但团成员人未满\n\n`)
// } else if (data.data.assistStatus === 3 && data.data.canStartNewAssist) {
// console.log(`已开团(未达上限),团成员人已满\n\n`)
// } else if (data.data.assistStatus === 3 && !data.data.canStartNewAssist) {
// console.log(`今日开团已达上限,且当前团成员人已满\n\n`)
// }
// if (data.data && !data.data.canStartNewAssist) {
// $.tuan = {
// "activityIdEncrypted": data.data.id,
// "assistStartRecordId": data.data.assistStartRecordId,
// "assistedPinEncrypted": data.data.encPin,
// "channel": "FISSION_BEAN"
// }
// }
// $.tuanActId = data.data.id;
// $.assistNum = data['data']['assistNum'] || 4;
// $.assistStatus = data['data']['assistStatus'];
// $.canStartNewAssist = data['data']['canStartNewAssist'];
// } else {
// $.tuan = true;//活动火爆
// console.log(`获取【赚京豆(微信小程序)-瓜分京豆】活动信息失败 ${JSON.stringify(data)}\n`)
// }
// }
// }
// } catch (e) {
// $.logErr(e, resp)
// } finally {
// resolve(data);
// }
// })
// })
// }
function openTuan() {
let body = {"activityIdEncrypted": $.tuanActId, "channel": "FISSION_BEAN"}
return new Promise(resolve => {
$.get(taskTuanUrl("vvipclub_distributeBean_startAssist", body), 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['success']) {
console.log(`【赚京豆(微信小程序)-瓜分京豆】开团成功`)
$.hasOpen = true
} else {
console.log(`\n开团失败:${JSON.stringify(data)}\n`)
}
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve(data);
}
})
})
}
// function openTuan() {
// let body = {"activityIdEncrypted": $.tuanActId, "channel": "FISSION_BEAN"}
// return new Promise(resolve => {
// $.get(taskTuanUrl("vvipclub_distributeBean_startAssist", body), 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['success']) {
// console.log(`【赚京豆(微信小程序)-瓜分京豆】开团成功`)
// $.hasOpen = true
// } else {
// console.log(`\n开团失败${JSON.stringify(data)}\n`)
// }
// }
// }
// } catch (e) {
// $.logErr(e, resp)
// } finally {
// resolve(data);
// }
// })
// })
// }
function getUserInfo() {
return new Promise(resolve => {
@@ -389,84 +392,84 @@ function doTask(body, func = "doInteractTask") {
})
}
async function helpFriends() {
for (let code of $.newShareCodes) {
if (!code) continue
await doTask({"itemId": code, "taskId": "3", "mpVersion": "3.4.0"}, "doHelpTask")
}
}
function readShareCode() {
console.log(`开始`)
return new Promise(async resolve => {
$.get({url: `https://code.chiang.fun/api/v1/jd/jdzz/read/${randomCount}/`, 'timeout': 10000}, (err, resp, data) => {
try {
if (err) {
console.log(`${JSON.stringify(err)}`)
console.log(`${$.name} API请求失败请检查网路重试`)
} else {
if (data) {
console.log(`随机取${randomCount}个码放到您固定的互助码后面(不影响已有固定互助)`)
data = JSON.parse(data);
}
}
} catch (e) {
$.logErr(e, resp)
} finally {
resolve(data);
}
})
await $.wait(10000);
resolve()
})
}
// async function helpFriends() {
// for (let code of $.newShareCodes) {
// if (!code) continue
// await doTask({"itemId": code, "taskId": "3", "mpVersion": "3.4.0"}, "doHelpTask")
// }
// }
// function readShareCode() {
// console.log(`开始`)
// return new Promise(async resolve => {
// $.get({url: `https://code.chiang.fun/api/v1/jd/jdzz/read/${randomCount}/`, 'timeout': 10000}, (err, resp, data) => {
// try {
// if (err) {
// console.log(`${JSON.stringify(err)}`)
// console.log(`${$.name} API请求失败请检查网路重试`)
// } else {
// if (data) {
// console.log(`随机取${randomCount}个码放到您固定的互助码后面(不影响已有固定互助)`)
// data = JSON.parse(data);
// }
// }
// } catch (e) {
// $.logErr(e, resp)
// } finally {
// resolve(data);
// }
// })
// await $.wait(10000);
// resolve()
// })
// }
//格式化助力码
function shareCodesFormat() {
return new Promise(async resolve => {
// console.log(`第${$.index}个京东账号的助力码:::${$.shareCodesArr[$.index - 1]}`)
$.newShareCodes = [];
if ($.shareCodesArr[$.index - 1]) {
$.newShareCodes = $.shareCodesArr[$.index - 1].split('@');
} else {
console.log(`由于您第${$.index}个京东账号未提供shareCode,将采纳本脚本自带的助力码\n`)
const tempIndex = $.index > inviteCodes.length ? (inviteCodes.length - 1) : ($.index - 1);
$.newShareCodes = inviteCodes[tempIndex].split('@');
}
const readShareCodeRes = await readShareCode();
if (readShareCodeRes && readShareCodeRes.code === 200) {
$.newShareCodes = [...new Set([...$.newShareCodes, ...(readShareCodeRes.data || [])])];
}
console.log(`${$.index}个京东账号将要助力的好友${JSON.stringify($.newShareCodes)}`)
resolve();
})
}
// function shareCodesFormat() {
// return new Promise(async resolve => {
// // console.log(`第${$.index}个京东账号的助力码:::${$.shareCodesArr[$.index - 1]}`)
// $.newShareCodes = [];
// if ($.shareCodesArr[$.index - 1]) {
// $.newShareCodes = $.shareCodesArr[$.index - 1].split('@');
// } else {
// console.log(`由于您第${$.index}个京东账号未提供shareCode,将采纳本脚本自带的助力码\n`)
// const tempIndex = $.index > inviteCodes.length ? (inviteCodes.length - 1) : ($.index - 1);
// $.newShareCodes = inviteCodes[tempIndex].split('@');
// }
// const readShareCodeRes = await readShareCode();
// if (readShareCodeRes && readShareCodeRes.code === 200) {
// $.newShareCodes = [...new Set([...$.newShareCodes, ...(readShareCodeRes.data || [])])];
// }
// console.log(`第${$.index}个京东账号将要助力的好友${JSON.stringify($.newShareCodes)}`)
// resolve();
// })
// }
function requireConfig() {
return new Promise(resolve => {
console.log(`开始获取${$.name}配置文件\n`);
//Node.js用户请在jdCookie.js处填写京东ck;
let shareCodes = [];
if ($.isNode()) {
if (process.env.JDZZ_SHARECODES) {
if (process.env.JDZZ_SHARECODES.indexOf('\n') > -1) {
shareCodes = process.env.JDZZ_SHARECODES.split('\n');
} else {
shareCodes = process.env.JDZZ_SHARECODES.split('&');
}
}
}
console.log(`${cookiesArr.length}个京东账号\n`);
$.shareCodesArr = [];
if ($.isNode()) {
Object.keys(shareCodes).forEach((item) => {
if (shareCodes[item]) {
$.shareCodesArr.push(shareCodes[item])
}
})
}
console.log(`您提供了${$.shareCodesArr.length}个账号的${$.name}助力码\n`);
resolve()
})
}
// function requireConfig() {
// return new Promise(resolve => {
// console.log(`开始获取${$.name}配置文件\n`);
// //Node.js用户请在jdCookie.js处填写京东ck;
// let shareCodes = [];
// if ($.isNode()) {
// if (process.env.JDZZ_SHARECODES) {
// if (process.env.JDZZ_SHARECODES.indexOf('\n') > -1) {
// shareCodes = process.env.JDZZ_SHARECODES.split('\n');
// } else {
// shareCodes = process.env.JDZZ_SHARECODES.split('&');
// }
// }
// }
// console.log(`共${cookiesArr.length}个京东账号\n`);
// $.shareCodesArr = [];
// if ($.isNode()) {
// Object.keys(shareCodes).forEach((item) => {
// if (shareCodes[item]) {
// $.shareCodesArr.push(shareCodes[item])
// }
// })
// }
// console.log(`您提供了${$.shareCodesArr.length}个账号的${$.name}助力码\n`);
// resolve()
// })
// }
function taskUrl(functionId, body = {}) {
return {