1
0
mirror of https://github.com/okyyds/yyds.git synced 2026-07-14 18:51:17 +08:00

Merge branch 'master' of github.com:okyyds/yyds

This commit is contained in:
yyds
2022-02-17 20:53:01 +08:00
3 changed files with 310 additions and 115 deletions

View File

@@ -1135,22 +1135,21 @@ async function Monthbean() {
async function jdCash() { async function jdCash() {
let functionId = "cash_homePage"; let functionId = "cash_homePage";
let body = "%7B%7D"; let body = {};
let uuid = randomString(16);
console.log(`正在获取领现金任务签名...`); console.log(`正在获取领现金任务签名...`);
isSignError = false; isSignError = false;
let sign = await getSign(functionId, decodeURIComponent(body), uuid) let sign = await getSign(functionId, body);
if (isSignError) { if (isSignError) {
console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`) console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`)
await $.wait(2 * 1000); await $.wait(2 * 1000);
isSignError = false; isSignError = false;
sign = await getSign(functionId, decodeURIComponent(body), uuid); sign =await getSign(functionId, body);
} }
if (isSignError) { if (isSignError) {
console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`) console.log(`领现金任务签名获取失败,等待2秒后再次尝试...`)
await $.wait(2 * 1000); await $.wait(2 * 1000);
isSignError = false; isSignError = false;
sign = await getSign(functionId, decodeURIComponent(body), uuid); sign = await getSign(functionId, body);
} }
if (!isSignError) { if (!isSignError) {
console.log(`领现金任务签名获取成功...`) console.log(`领现金任务签名获取成功...`)
@@ -1159,9 +1158,8 @@ async function jdCash() {
$.jdCash = 0; $.jdCash = 0;
return return
} }
let url = `${JD_API_HOST}?functionId=${functionId}&build=167774&client=apple&clientVersion=10.1.0&uuid=${uuid}&${sign}`
return new Promise((resolve) => { return new Promise((resolve) => {
$.post(apptaskUrl(url, body), async(err, resp, data) => { $.post(apptaskUrl(functionId, sign), async (err, resp, data) => {
try { try {
if (err) { if (err) {
console.log(`${JSON.stringify(err)}`) console.log(`${JSON.stringify(err)}`)
@@ -1184,10 +1182,10 @@ async function jdCash() {
}) })
}) })
} }
function apptaskUrl(url, body) { function apptaskUrl(functionId = "", body = "") {
return { return {
url, url: `${JD_API_HOST}?functionId=${functionId}`,
body: `body=${body}`, body,
headers: { headers: {
'Cookie': cookie, 'Cookie': cookie,
'Host': 'api.m.jd.com', 'Host': 'api.m.jd.com',
@@ -1200,14 +1198,13 @@ function apptaskUrl(url, body) {
} }
} }
} }
function getSign(functionid, body, uuid) { function getSign(functionId, body) {
return new Promise(async resolve => { return new Promise(async resolve => {
let data = { let data = {
"functionId": functionid, functionId,
"body": body, body: JSON.stringify(body),
"uuid": uuid,
"client":"apple", "client":"apple",
"clientVersion": "10.1.0" "clientVersion":"10.3.0"
} }
let HostArr = ['jdsign.cf', 'signer.nz.lu'] let HostArr = ['jdsign.cf', 'signer.nz.lu']
let Host = HostArr[Math.floor((Math.random() * HostArr.length))] let Host = HostArr[Math.floor((Math.random() * HostArr.length))]
@@ -1218,19 +1215,19 @@ function getSign(functionid, body, uuid) {
Host, Host,
"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" "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"
}, },
timeout: 15000 timeout: 30 * 1000
} }
$.post(options, (err, resp, data) => { $.post(options, (err, resp, data) => {
try { try {
if (err) { if (err) {
console.log(`${JSON.stringify(err)}`); console.log(JSON.stringify(err))
isSignError = true; console.log(`${$.name} getSign API请求失败请检查网路重试`)
//console.log(`${$.name} getSign API请求失败请检查网路重试`) } else {
} else {}
}
} catch (e) { } catch (e) {
$.logErr(e, resp) $.logErr(e, resp)
} } finally {
finally {
resolve(data); resolve(data);
} }
}) })

View File

@@ -1,23 +1,26 @@
/* /*
* 活动入口:京东金融养猪猪
京东金融养猪猪 一键开完所有的宝箱功能。耗时70秒
活动入口:京东金融养猪猪, 大转盘抽奖
脚本更新地址https://github.com/zero205/JD_tencent_scf 喂食
加了个邀新助力不过应该没啥用。邀请码变量PIGPETSHARECODE变量仅支持单账号邀请码 每日签到
完成分享任务得猪粮
已支持IOS双京东账号,Node.js支持N个京东账号 已支持IOS双京东账号,Node.js支持N个京东账号
脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js 脚本兼容: QuantumultX, Surge, Loon, 小火箭,JSBox, Node.js
============Quantumultx=============== ===============Quantumultx===============
[task_local] [task_local]
京东金融养猪猪 #京东金融养猪猪
12 0-23/6 * * * https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_pigPet.js, tag=京东金融养猪猪, enabled=true 12 0-23/6 * * * https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_pigPet.js, tag=京东金融养猪猪, img-url=https://raw.githubusercontent.com/58xinian/icon/master/jdyz.png, enabled=true
================Loon============== ================Loon==============
[Script] [Script]
cron "12 0-23/6 * * *" script-path=https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_pigPet.js,tag=摇钱树助力 cron "12 0-23/6 * * *" script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_pigPet.js, tag=京东金融养猪猪
===============Surge================= ===============Surge=================
京东金融养猪猪 = type=cron,cronexp="12 0-23/6 * * *",wake-system=1,timeout=20,script-path=https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_pigPet.js 京东金融养猪猪 = type=cron,cronexp="12 0-23/6 * * *",wake-system=1,timeout=3600,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_pigPet.js
============小火箭========= ============小火箭=========
京东金融养猪猪 = type=cron,script-path=https://raw.githubusercontent.com/zero205/JD_tencent_scf/main/jd_pigPet.js, cronexpr="12 0-23/6 * * *", timeout=3600, enable=true 京东金融养猪猪 = type=cron,script-path=https://raw.githubusercontent.com/Aaron-lv/sync/jd_scripts/jd_pigPet.js, cronexpr="12 0-23/6 * * *", timeout=3600, enable=true
*
*/ */
const $ = new Env('金融养猪'); const $ = new Env('金融养猪');
const url = require('url'); const url = require('url');
@@ -27,15 +30,13 @@ const MISSION_BASE_API = `https://ms.jr.jd.com/gw/generic/mission/h5/m`;
const notify = $.isNode() ? require('./sendNotify') : ''; const notify = $.isNode() ? require('./sendNotify') : '';
//Node.js用户请在jdCookie.js处填写京东ck; //Node.js用户请在jdCookie.js处填写京东ck;
const jdCookieNode = $.isNode() ? require('./jdCookie.js') : ''; const jdCookieNode = $.isNode() ? require('./jdCookie.js') : '';
let UA = $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1") let shareId = "hRYQeeaVYXQBX1Mguan2kA"
let shareId = 'KMnydTyM9ezAduo1QsTZZsAdoUJQ3Dik'
$.shareCodes = []; $.shareCodes = [];
if ($.isNode()) { if ($.isNode()) {
Object.keys(jdCookieNode).forEach((item) => { Object.keys(jdCookieNode).forEach((item) => {
cookiesArr.push(jdCookieNode[item]) cookiesArr.push(jdCookieNode[item])
}) })
if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {}; if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {};
if (process.env.JR_USER_AGENT) UA = process.env.JR_USER_AGENT;
} else { } else {
cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item); cookiesArr = [$.getdata('CookieJD'), $.getdata('CookieJD2'), ...jsonParse($.getdata('CookiesJD') || "[]").map(item => item.cookie)].filter(item => !!item);
} }
@@ -47,15 +48,14 @@ if ($.isNode()) {
if (process.env.PIGPETSHARECODE) { if (process.env.PIGPETSHARECODE) {
shareId = process.env.PIGPETSHARECODE shareId = process.env.PIGPETSHARECODE
} else { } else {
let res = await getAuthorShareCode('https://raw.githubusercontent.com/zero205/updateTeam/main/shareCodes/pigPet.json') let res = await getAuthorShareCode('https://raw.githubusercontent.com/Aaron-lv/updateTeam/master/shareCodes/pigPet.json')
if (!res) { if (!res) {
res = await getAuthorShareCode('https://raw.fastgit.org/zero205/updateTeam/main/shareCodes/pigPet.json') $.http.get({url: 'https://purge.jsdelivr.net/gh/Aaron-lv/updateTeam@master/shareCodes/pigPet.json'}).then((resp) => {}).catch((e) => console.log('刷新CDN异常', e));
await $.wait(2000)
res = await getAuthorShareCode('https://cdn.jsdelivr.net/gh/Aaron-lv/updateTeam@master/shareCodes/pigPet.json')
} }
if (res){ if (res && res.length) shareId = res[Math.floor((Math.random() * res.length))]
shareId = res[Math.floor((Math.random() * res.length))];
} }
}
console.log(`\n【原作者LXK大佬】\n\nByzero205\n添加:邀请新用户,大转盘助力,抢粮食\n修改:优化日志输出,自动喂食\n\n默认不抢粮食成功机率小需要的请添加变量JD_PIGPET_PK值填true\nTodo领取成就奖励\n`);
for (let i = 0; i < cookiesArr.length; i++) { for (let i = 0; i < cookiesArr.length; i++) {
if (cookiesArr[i]) { if (cookiesArr[i]) {
cookie = cookiesArr[i]; cookie = cookiesArr[i];
@@ -63,7 +63,6 @@ if ($.isNode()) {
$.index = i + 1; $.index = i + 1;
$.isLogin = true; $.isLogin = true;
$.nickName = ''; $.nickName = '';
$.finish = false;
await TotalBean(); await TotalBean();
console.log(`\n开始【京东账号${$.index}${$.nickName || $.UserName}\n`); console.log(`\n开始【京东账号${$.index}${$.nickName || $.UserName}\n`);
if (!$.isLogin) { if (!$.isLogin) {
@@ -76,13 +75,19 @@ if ($.isNode()) {
await jdPigPet(); await jdPigPet();
} }
} }
let res2 = await getAuthorShareCode('https://raw.githubusercontent.com/Aaron-lv/updateTeam/master/shareCodes/pig.json')
if (!res2) {
$.http.get({url: 'https://purge.jsdelivr.net/gh/Aaron-lv/updateTeam@master/shareCodes/pig.json'}).then((resp) => {}).catch((e) => console.log('刷新CDN异常', e));
await $.wait(2000)
res2 = await getAuthorShareCode('https://cdn.jsdelivr.net/gh/Aaron-lv/updateTeam@master/shareCodes/pig.json')
}
$.shareCodes = [...new Set([...$.shareCodes, ...(res2 || [])])]
console.log($.shareCodes)
console.log(`\n======开始大转盘助力======\n`); console.log(`\n======开始大转盘助力======\n`);
$.helpId = await getAuthorShareCode('https://raw.fastgit.org/zero205/updateTeam/main/shareCodes/pig.json');
$.shareCodes = [...$.shareCodes, ...($.helpId || [])]
for (let j = 0; j < cookiesArr.length; j++) { for (let j = 0; j < cookiesArr.length; j++) {
cookie = cookiesArr[j]; cookie = cookiesArr[j];
if ($.shareCodes && $.shareCodes.length) { if ($.shareCodes && $.shareCodes.length) {
console.log(`\n自己账号内部循环互助有剩余次数再帮【zero205】助力\n`); console.log(`\n自己账号内部循环互助\n`);
for (let item of $.shareCodes) { for (let item of $.shareCodes) {
await pigPetLotteryHelpFriend(item) await pigPetLotteryHelpFriend(item)
await $.wait(1000) await $.wait(1000)
@@ -90,7 +95,7 @@ if ($.isNode()) {
} }
} }
} }
if (process.env.PIGNF != 'false' && allMessage) { if (allMessage && new Date().getHours() % 6 === 0) {
if ($.isNode()) await notify.sendNotify($.name, allMessage); if ($.isNode()) await notify.sendNotify($.name, allMessage);
$.msg($.name, '', allMessage); $.msg($.name, '', allMessage);
} }
@@ -103,6 +108,7 @@ if ($.isNode()) {
}) })
async function jdPigPet() { async function jdPigPet() {
try { try {
$.notAddFood = false;
await pigPetLogin(); await pigPetLogin();
if (!$.hasPig) return if (!$.hasPig) return
await pigPetSignIndex(); await pigPetSignIndex();
@@ -115,8 +121,11 @@ async function jdPigPet() {
} }
await pigPetMissionList(); await pigPetMissionList();
await missions(); await missions();
if ($.finish) return if ($.notAddFood) {
console.log(`\n猪猪已成熟,跳过喂食`)
} else {
await pigPetUserBag(); await pigPetUserBag();
}
} catch (e) { } catch (e) {
$.logErr(e) $.logErr(e)
} }
@@ -125,7 +134,7 @@ async function pigPetLottery() {
if ($.currentCount > 0) { if ($.currentCount > 0) {
for (let i = 0; i < $.currentCount; i++) { for (let i = 0; i < $.currentCount; i++) {
await pigPetLotteryPlay(); await pigPetLotteryPlay();
await $.wait(6000) await $.wait(5000);
} }
} }
} }
@@ -197,17 +206,16 @@ function pigPetUserBag() {
} }
for (let item of data.resultData.resultData.goods) { for (let item of data.resultData.resultData.goods) {
if (item.count >= 20) { if (item.count >= 20) {
let i = parseInt(process.env.PIG_FEED_LIMIT || 50) let num = 50;
console.log(`\n每次运行最多喂食${i}次(环境变量PIG_FEED_LIMIT)`) $.finish = false;
$.remain = item.count
do { do {
console.log(`\n10秒后开始喂食${item.goodsName},当前数量为${item.count}g`) console.log(`10秒后开始喂食${item.goodsName},当前数量为${$.remain}g`)
await $.wait(10000); await $.wait(10000);
await pigPetAddFood(item.sku); await pigPetAddFood(item.sku);
if ($.finish) break $.remain = $.remain - 20
item.count = item.count - 20 num--
i-- } while (num > 0 && !$.finish && $.remain >= 20)
} while (item.count >= 20 && i > 0)
if ($.finish) break
} }
} }
} else { } else {
@@ -288,14 +296,14 @@ function pigPetLogin() {
if (data.resultData.resultCode === 0) { if (data.resultData.resultCode === 0) {
$.hasPig = data.resultData.resultData.hasPig; $.hasPig = data.resultData.resultData.hasPig;
if (!$.hasPig) { if (!$.hasPig) {
console.log(`\n京东账号${$.index} ${$.nickName} 未开启养猪活动,请手动去京东金融APP开启此活动或复制口令直达:\n29.0复制整段话 Https:/JWHOjEv6wgo0BQ 我的5斤百香果能领取啦来养猪一起赚#0E4EfAMIKuyDlW%打kai>【ぺ京倲金融ぺ App】\n`) console.log(`\n京东账号${$.index} ${$.nickName} 未开启养猪活动,请手动去京东金融APP开启此活动\n`)
return return
} }
if (data.resultData.resultData.wished) { if (data.resultData.resultData.wished) {
if (data.resultData.resultData.wishAward) { if (data.resultData.resultData.wishAward) {
allMessage += `京东账号${$.index} ${$.nickName || $.UserName}\n${data.resultData.resultData.wishAward.name}已可兑换${$.index !== cookiesArr.length ? '\n\n' : ''}` allMessage += `京东账号${$.index} ${$.nickName || $.UserName}\n${data.resultData.resultData.wishAward.name}已可兑换${$.index !== cookiesArr.length ? '\n\n' : ''}`
console.log(`【京东账号${$.index}${$.nickName || $.UserName} ${data.resultData.resultData.wishAward.name}已可兑换请及时去京东金融APP领取`) console.log(`【京东账号${$.index}${$.nickName || $.UserName} ${data.resultData.resultData.wishAward.name}已可兑换请及时去京东金融APP领取`)
$.finish = true $.notAddFood = true;
} }
} }
console.log(`\n【京东账号${$.index}${$.nickName || $.UserName} 的邀请码为${data.resultData.resultData.user.shareId}\n`) console.log(`\n【京东账号${$.index}${$.nickName || $.UserName} 的邀请码为${data.resultData.resultData.user.shareId}\n`)
@@ -772,7 +780,7 @@ function getJumpInfo(juid) {
'Connection': 'keep-alive', 'Connection': 'keep-alive',
'Accept': 'application/json', 'Accept': 'application/json',
"Cookie": cookie, "Cookie": cookie,
'User-Agent': UA, 'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"),
'Accept-Language': 'zh-cn', 'Accept-Language': 'zh-cn',
'Referer': 'https://u1.jr.jd.com/uc-fe-wxgrowing/cloudpig/index/', 'Referer': 'https://u1.jr.jd.com/uc-fe-wxgrowing/cloudpig/index/',
'Accept-Encoding': 'gzip, deflate, br' 'Accept-Encoding': 'gzip, deflate, br'
@@ -812,7 +820,7 @@ function queryMissionReceiveAfterStatus(missionId) {
"Cookie": cookie, "Cookie": cookie,
"Origin": "https://jdjoy.jd.com", "Origin": "https://jdjoy.jd.com",
"Referer": "https://jdjoy.jd.com/", "Referer": "https://jdjoy.jd.com/",
"User-Agent": UA "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1")
} }
} }
$.get(options, (err, resp, data) => { $.get(options, (err, resp, data) => {
@@ -850,7 +858,7 @@ function finishReadMission(missionId, readTime) {
"Cookie": cookie, "Cookie": cookie,
"Origin": "https://jdjoy.jd.com", "Origin": "https://jdjoy.jd.com",
"Referer": "https://jdjoy.jd.com/", "Referer": "https://jdjoy.jd.com/",
"User-Agent": UA "User-Agent": $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1")
} }
} }
$.get(options, (err, resp, data) => { $.get(options, (err, resp, data) => {
@@ -881,6 +889,18 @@ function getAuthorShareCode(url) {
"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" "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) => { $.get(options, async (err, resp, data) => {
try { try {
resolve(JSON.parse(data)) resolve(JSON.parse(data))
@@ -951,7 +971,7 @@ function taskUrl(function_id, body) {
'Content-Type': `application/x-www-form-urlencoded;charset=UTF-8`, 'Content-Type': `application/x-www-form-urlencoded;charset=UTF-8`,
'Host': `ms.jr.jd.com`, 'Host': `ms.jr.jd.com`,
'Connection': `keep-alive`, 'Connection': `keep-alive`,
'User-Agent': UA, 'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"),
'Referer': `https://u.jr.jd.com/`, 'Referer': `https://u.jr.jd.com/`,
'Accept-Language': `zh-cn` 'Accept-Language': `zh-cn`
} }

178
jd_speedcoupon.js Normal file

File diff suppressed because one or more lines are too long