This commit is contained in:
Leon 2021-07-03 18:18:22 +08:00
parent d8b2474cd7
commit 9ce8c061ca
12 changed files with 1613 additions and 23 deletions

View File

@ -164,21 +164,21 @@ var_name=(
## 所有有互助码的活动,把脚本名称列在 name_js 中,对应 config.sh 中互助码后缀列在 name_config 中,中文名称列在 name_chinese 中。
## name_js、name_config 和 name_chinese 中的三个名称必须一一对应。
name_js=(
panghu999_jd_scripts_jd_fruit
panghu999_jd_scripts_jd_pet
panghu999_jd_scripts_jd_plantBean
panghu999_jd_scripts_jd_dreamFactory
panghu999_jd_scripts_jd_jdfactory
panghu999_jd_scripts_jd_jdzz
panghu999_jd_scripts_jd_crazy_joy
panghu999_jd_scripts_jd_jxnc
panghu999_jd_scripts_jd_bookshop
panghu999_jd_scripts_jd_cash
panghu999_jd_scripts_jd_sgmh
panghu999_jd_scripts_jd_cfd
panghu999_jd_scripts_jd_health
panghu999_jd_scripts_jd_carnivalcity
panghu999_jd_scripts_jd_zoo
JDHelloWorld_jd_scripts_jd_fruit
JDHelloWorld_jd_scripts_jd_pet
JDHelloWorld_jd_scripts_jd_plantBean
JDHelloWorld_jd_scripts_jd_dreamFactory
JDHelloWorld_jd_scripts_jd_jdfactory
JDHelloWorld_jd_scripts_jd_jdzz
JDHelloWorld_jd_scripts_jd_crazy_joy
JDHelloWorld_jd_scripts_jd_jxnc
JDHelloWorld_jd_scripts_jd_bookshop
JDHelloWorld_jd_scripts_jd_cash
JDHelloWorld_jd_scripts_jd_sgmh
JDHelloWorld_jd_scripts_jd_cfd
JDHelloWorld_jd_scripts_jd_health
JDHelloWorld_jd_scripts_jd_carnivalcity
JDHelloWorld_jd_scripts_jd_zoo
)
name_config=(
Fruit
@ -427,6 +427,9 @@ export dd_thread="30"
export starttime="23:59:59.00000000"
### 结束时间
export endtime="00:00:30.00000000"
## 抢京豆
### ck 优先读取【JDCookies.txt】 文件内的ck 再到 ENV的 变量 JD_COOKIE='ck1&ck2' 最后才到脚本内 cookies=ck
qjd_zlzh = ['Your JD_User', '买买买', '东哥']
# Wenmoux 部分环境变量
## QQ星系牧场自动兑换20豆

View File

@ -393,6 +393,12 @@ export starttime="23:59:59.00000000"
export endtime="00:00:30.00000000"
```
```
## 抢京豆
### ck 优先读取【JDCookies.txt】 文件内的ck 再到 ENV的 变量 JD_COOKIE='ck1&ck2' 最后才到脚本内 cookies=ck
qjd_zlzh=['Your JD_User', '买买买', '东哥']
```
## Wenmoux 部分环境变量

185
Scripts/js/jx_cfdtx.js Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,42 @@
[ 文件 : code.sh ]
2021.7.3.004
1、修复导致京喜财富岛活动脚本跑不动的问题。
2、自动修改所有的jd_cfd.js。是指输出京喜token。
2021.7.3.003
1、引入 pt_pin 校验京喜token。
2021.7.2.002 - 2021.7.3.001
1、增加了京喜农场 Token 的格式化导出。可用于京喜财富岛提现。必须搭配最新的 task_before.sh 模板一并使用。
感谢 EmmieDempsey 大佬提供的思路。
使用方法:搭配最新的 task_before.sh 模板运行一次 code.sh再根据日志提示的优先仓库运行一次京喜财富岛活动脚本。再运行一次 code.sh 。
问题:
1) task_before.sh 的 Token 是空值?
答:必须完整运行一次优先仓库的京喜财富岛活动脚本后,再运行 code.sh 。否则 Token 可能会无法写入或写入不完整。
2) task_before.sh Token 写入正常,但是京喜财富岛提现还是读取不到 Token
答:①确保 task_before.sh 是最新版,具体可以比对你的文件和置顶模板的第三行 Build 号。
②京喜财富岛的任务不能设置 conc JD_COOKIE 并发多线程,否则会导致 Token 读取异常。
2、增加京喜农场 Token 输出为空的原因提示。
2021.7.2.001
1、改进屏蔽模式。详见脚本正文。
[ 文件 : task_before.sh ]
2021.7.3
1、搭配最新 config.sh 模板的临时屏蔽某个 COOKIES 参加某个活动实现相应功能。
2021.7.2
1、添加了京喜农场 Token 原始模板。可用于京喜财富岛提现。
[ 文件 : config_sample.sh ]
config.sh模板适用于青龙 2.8.0。整合了Oreo大佬的最新环境变量。
其中屏蔽某COOKIES不参加某活动的格式必须参照本模板填写。
自行比较模板和自己config.sh把需要用的变量加入到自己的config.sh
频道https://t.me/update_help
交流群https://t.me/update_help_group

View File

@ -0,0 +1,52 @@
更新日志:
2021.7.3.004
1、修复导致京喜财富岛活动脚本跑不动的问题。
2、自动修改所有的jd_cfd.js。是指输出京喜token。
2021.7.3.003
1、引入 pt_pin 校验京喜token。
2021.7.2.002 - 2021.7.3.001
1、增加了京喜农场 Token 的格式化导出。可用于京喜财富岛提现。必须搭配最新的 task_before.sh 模板一并使用。否则,京喜财富岛提现会识别不到 token 。
感谢 EmmieDempsey 大佬提供的思路。
使用方法:搭配最新的 task_before.sh 模板运行一次 code.sh再根据日志提示的优先仓库运行一次京喜财富岛活动脚本。再运行一次 code.sh 。
2、增加京喜农场 Token 输出为空的原因提示。
2021.7.2.001
1、改进屏蔽模式。详见脚本正文。
2021.7.1
1、修正 code.sh 屏蔽账号被助力功能启用时,互助规则中@缺失BUG
2、取消 task_before.sh 优先读取 code 日志的代码。
2021.6.30
1、增加屏蔽账号被助力的自定义功能。被屏蔽的账号仍可助力其他账号。
2021.6.29
1、调试模式增加了单环境变量包含多个 COOKIES 的判断和提示。
2021.6.27
1、由于青龙容器已更新对ck的读取规则。code.sh和task_before.sh取消对包含空格的ck的预处理先 docker exec -it qinglong ql update 两次后再运行 code.sh
2021.6.26
1、完善仓库来源的脚本。便于自定义
2、修改了改写 task_before.sh 脚本的部分代码:调整读取最新 code.sh 日志的时机,修正了 code.sh 写入错误信息到 task_before.sh 的 BUG
3、增加了调试模式
4、支持 task_before.sh备份功能。备份路径在config/bak/
5、更加严格的读取互助码、互助规则的正则表达式避免写入错误
2021.6.25 第二次
1、添加 柠檬(胖虎)代维护 lxk0301 仓库,优先级顺序为:柠檬(胖虎)> JDHelloWorld > lxk0301;
2、增加后台 code.sh 线程数量判定,如果线程数量过多,则停止运行脚本,避免互助码和规则出现错误。
2021.6.25
1、自动判断是否存在 JDHelloWorld 或 lxk0301 的活动脚本运行日志,如果存在则读取整理互助码。如果不存在则提示并退出运行。
2021.6.24
1、upcodes.sh 合并到 code.sh
2021.6.23
1、初版发布

View File

@ -0,0 +1,85 @@
使用方法:
、code.sh 是基于青龙 2.2.0 的 code.sh 修改而来。只支持青龙 2.8.0 及以上。支持互助模板修改,支持活动中文名称显示等。
主要原理:
a) code.sh运行分两个阶段
1、第一阶段从各个活动脚本日志中搜索互助码跟 COOKIES 校对后整理输出。根据你选择的互助规则模板,生成对应的互助规则。最新整理的互助码和互助规则输出到 code.sh 的日志,路径在/ql/log/code/
2、第二阶段读取 code.sh 的日志和 task_before.sh 。校对每一条互助码和互助规则内容,如果内容不一致,则自动改写更新 task_before.sh 的互助码或互助规则。当 code.sh 日志中互助码是空值或者 undefined ,互助规则是空值的情况时,跳过改写 task_before.sh 对应的互助码和互助规则。
b) 有些活动脚本输出的互助码不全比如你有10个账号目前跑了一半日志只输出了5个那么 code.sh 整理的也就只有5个有互助码5个空值。
由于 code.sh 里面不会将日志中互助码和互助规则的空值和 undefined 改写到task_before.sh。所以 code.sh 跑得次数越多task_before.sh 里面的互助码和互助规则越完整。
一、添加面板互助码自动更新监控任务。可自动读取最新的格式化导出互助码日志,自动更新 task_before.sh 中的互助码。
1、将 code.sh 脚本拷贝到容器内路径/ql/config/
注:如果此前没有配置过 task_before.sh 脚本,可以使用附件提供的初始化模板文件,拷贝路径也是 /ql/config/。如果此前自行配置过 task_before.sh ,请自行同模板比对文本最后一段代码,作用是提交互助码和互助规则给活动脚本,如果内容缺失,可能导致互助异常。
2、格式化更新互助码的定时任务规则
名称:格式化更新互助码
命令bash /ql/config/code.sh
定时规则:*/60 * * * *
3、需要读取活动脚本日志才能格式化整理各个活动的互助码及互助规则目前兼容以下三个仓库的脚本日志。按读取优先级顺序为
a)柠檬(胖虎)代维护 lxk0301 仓库:
名称:柠檬(胖虎)代维护 lxk0301 仓库
命令ql repo https://github.com/panghu999/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp|Coupon|jd_try|format_" "^jd[^_]|USER"
定时规则34 8,12,16,20,0 * * *
b)JDHelloWorld 代维护 lxk0301 仓库:
名称JDHelloWorld 代维护 lxk0301 仓库
命令ql repo https://github.com/JDHelloWorld/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp|Coupon|enen" "^jd[^_]|USER"
定时规则32 8,12,16,20,0 * * *
c)lxk0301 仓库:
名称lxk0301 仓库
命令ql repo https://github.com/chinnkarahoi/jd_scripts.git "jd_|jx_|getJDCookie" "activity|backUp|Coupon" "^jd[^_]|USER"
定时规则20 8,12,16,20,0 * * *
4、导出京喜农场 Token 的方法:
a) 前提:必须搭配最新的 task_before.sh 模板,否则京喜财富岛提现无法读取到 token。
b) 步骤:运行一次 code.sh再根据日志提示的优先仓库运行一次京喜财富岛活动脚本。再运行一次 code.sh 。
c问题
1) task_before.sh 的 Token 是空值?
答:必须完整运行一次优先仓库的京喜财富岛活动脚本后,再运行 code.sh 。否则 Token 可能会无法写入或写入不完整。
2) task_before.sh Token 写入正常,但是京喜财富岛提现还是读取不到 Token
答:①确保 task_before.sh 是最新版,具体可以比对你的文件和置顶模板的第三行 Build 号。
②京喜财富岛的任务不能设置 conc JD_COOKIE 并发多线程,否则会导致 Token 读取异常。
二、其他自定义的参数配置:
1、自定义互助规则模板定义
code.sh 默认互助规则为:“均等机会助力模板”,自己根据注释部分修改模板;
## 定义 jcode 脚本导出的互助码模板样式(选填)
## 不填 使用“按编号顺序助力模板”Cookie编号在前的优先助力
## 填 0 使用“全部一致助力模板”,所有账户要助力的码全部一致
## 填 1 使用“均等机会助力模板”,所有账户获得助力次数一致
## 填 2 使用“随机顺序助力模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。
HelpType="1"
2、自定义是否修改配置文件
## 定义是否自动更新配置文件中的互助码和互助规则默认为1表示更新留空或其他数值表示不更新。
UpdateType="1"
3、仓库作者自定义
脚本作者定义如下:
repo1='panghu999'
repo2='JDHelloWorld'
repo3='chinnkarahoi'
如果需要自由组合脚本的,就搜索 name_js 把数组内脚本作者前缀"repo"替换成你想指定的"repo1" 或"repo2"或"repo3"
注:由于其他大佬的脚本输出日志的互助码文本规则并不统一,又或者不输出互助码。所以暂不支持其他大佬的自由定义。如果你发现有新支持仓库,请及时与我联系。
4、自动 备份 task_before.sh 配置文件开关默认是1表示开启设置为0表示关闭。备份路径 /ql/config/bak/
BAKUP="1";
5、自定义屏蔽指定账户被助力但不影响这些帐号助力其他帐号。具体详见 code.sh 内容;
6、如果反复提醒检测到 code.sh正在运行说明code.sh的运行线程过多如果强行运行可能会导致互助码和规则写入异常。常规做法是等一会再试。如果非要强行运行方法如下
强制运行方法:
①修改config.sh
DEBUG="1"
如果日志输出线程数是9
②再在code.sh搜索
$(ps | grep code.sh | grep -v grep | wc -l)" -gt 8
把8改成9然后code.sh可以运行但不建议这么做因为这是一个防呆设计。

View File

@ -0,0 +1,516 @@
#!/usr/bin/env bash
#Build 20210703-004
## 导入通用变量与函数
dir_shell=/ql/shell
. $dir_shell/share.sh
## 判断仓库类别及日志存在与否
repo1='panghu999'
repo2='JDHelloWorld'
repo3='chinnkarahoi'
if [ "$(ls $dir_log |grep panghu999_jd_scripts | wc -l)" -gt 0 ]; then
repo=$repo1
elif [ "$(ls $dir_log |grep JDHelloWorld | wc -l)" -gt 0 ]; then
repo=$repo2
elif [ "$(ls $dir_log |grep chinnkarahoi | wc -l)" -gt 0 ]; then
repo=$repo3
else
repo=''
fi
## 调试模式开关默认是0表示关闭设置为1表示开启
DEBUG="1"
## 备份配置文件开关默认是1表示开启设置为0表示关闭。备份路径 /ql/config/bak/
BAKUP="1"
## 定义 jcode 脚本导出的互助码模板样式(选填)
## 不填 使用“按编号顺序助力模板”Cookie编号在前的优先助力
## 填 0 使用“全部一致助力模板”,所有账户要助力的码全部一致
## 填 1 使用“均等机会助力模板”,所有账户获得助力次数一致
## 填 2 使用“随机顺序助力模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。
HelpType="1"
## 定义屏蔽模式。被屏蔽的账号将不被助力,被屏蔽的账号仍然可以助力其他账号。
## 设定值为 BreakHelpType="1" 表示启用屏蔽模式;不填或填其他内容表示不开启功能。
## 自定义屏蔽账号序号或序号区间。当 BreakHelpType="1"时生效。
## 设定值为一个或多个不相同正整数,每个正整数不大于账号总数;也可以设置正整数区间,最大正整数不大于账号总数;
## 如a) 设定为 BreakHelpNum="3" 表示从第 3 个账号不被助力;
## b) 设定为 BreakHelpNum="5 7 8 10" 表示从第 5 7 8 10 个账号均不被助力;
## c) 设定为 BreakHelpNum="6-12" 表示从第 6 个账号到第 12 个账号均不被助力;
## d) 设定为 BreakHelpNum="4 9-14 15~18 19_21" 表示第4个账号、第9至14账号、第15至18账号、第19至21账号均不被助力。注意序号区间连接符仅支持 - ~ _
## 不按示例填写可能引发报错。
BreakHelpType="0" ## 屏蔽模式
BreakHelpNum="4 9-14 15~18 19_21" ## 屏蔽账号序号或序号区间
## 定义是否自动更新配置文件中的互助码和互助规则默认为1表示更新留空或其他数值表示不更新。
UpdateType="1"
## 需组合的环境变量列表env_name需要和var_name一一对应如何有新活动按照格式添加(不懂勿动)
env_name=(
FRUITSHARECODES
PETSHARECODES
PLANT_BEAN_SHARECODES
DREAM_FACTORY_SHARE_CODES
DDFACTORY_SHARECODES
JDJOY_SHARECODES
JDZZ_SHARECODES
JXNC_SHARECODES
BOOKSHOP_SHARECODES
JD_CASH_SHARECODES
JDSGMH_SHARECODES
JDCFD_SHARECODES
JDHEALTH_SHARECODES
JD818_SHARECODES
CITY_SHARECODES
JXNCTOKENS
)
var_name=(
ForOtherFruit
ForOtherPet
ForOtherBean
ForOtherDreamFactory
ForOtherJdFactory
ForOtherJoy
ForOtherJdzz
ForOtherJxnc
ForOtherBookShop
ForOtherCash
ForOtherSgmh
ForOtherCfd
ForOtherHealth
ForOtherCarni
ForOtherCity
)
## name_js为脚本文件名如果使用ql repo命令拉取文件名含有作者名
## 所有有互助码的活动,把脚本名称列在 name_js 中,对应 config.sh 中互助码后缀列在 name_config 中,中文名称列在 name_chinese 中。
## name_js、name_config 和 name_chinese 中的三个名称必须一一对应。
name_js=(
"$repo"_jd_scripts_jd_fruit
"$repo"_jd_scripts_jd_pet
"$repo"_jd_scripts_jd_plantBean
"$repo"_jd_scripts_jd_dreamFactory
"$repo"_jd_scripts_jd_jdfactory
"$repo"_jd_scripts_jd_crazy_joy
"$repo"_jd_scripts_jd_jdzz
"$repo"_jd_scripts_jd_jxnc
"$repo"_jd_scripts_jd_bookshop
"$repo"_jd_scripts_jd_cash
"$repo"_jd_scripts_jd_sgmh
"$repo"_jd_scripts_jd_cfd
"$repo"_jd_scripts_jd_health
"$repo"_jd_scripts_jd_carnivalcity
"$repo"_jd_scripts_jd_city
)
name_config=(
Fruit
Pet
Bean
DreamFactory
JdFactory
Joy
Jdzz
Jxnc
BookShop
Cash
Sgmh
Cfd
Health
Carni
City
)
name_chinese=(
东东农场
东东萌宠
京东种豆得豆
京喜工厂
东东工厂
crazyJoy任务
京东赚赚
京喜农场
口袋书店
签到领现金
闪购盲盒
京喜财富岛
东东健康社区
京东手机狂欢城
城城领现金
)
#仅输出互助码的环境变量
name_js_only=(
"$repo"_jd_scripts_jd_cfd
)
name_config_only=(
TokenJxnc
)
name_chinese_only=(
京喜token
)
## 生成pt_pin清单
gen_pt_pin_array() {
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local tmp1 tmp2 i pt_pin_temp
for i in "${!array[@]}"; do
pt_pin_temp=$(echo ${array[i]} | perl -pe "{s|.*pt_pin=([^; ]+)(?=;?).*|\1|; s|%|\\\x|g}")
[[ $pt_pin_temp == *\\x* ]] && pt_pin[i]=$(printf $pt_pin_temp) || pt_pin[i]=$pt_pin_temp
done
}
## 导出互助码的通用程序,$1去掉后缀的脚本名称$2config.sh中的后缀$3活动中文名称
export_codes_sub() {
local task_name=$1
local config_name=$2
local chinese_name=$3
local config_name_my=My$config_name
local config_name_for_other=ForOther$config_name
local i j k m n pt_pin_in_log code tmp_grep tmp_my_code tmp_for_other user_num random_num_list
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
if cd $dir_log/$task_name &>/dev/null && [[ $(ls) ]]; then
## 寻找所有互助码以及对应的pt_pin
i=0
pt_pin_in_log=()
code=()
pt_pin_and_code=$(ls -r *.log | xargs awk -v var="$chinese_name好友互助码" 'BEGIN{FS="[ )】]+"; OFS="&"} $3~var {print $2,$4}')
for line in $pt_pin_and_code; do
pt_pin_in_log[i]=$(echo $line | awk -F "&" '{print $1}')
code[i]=$(echo $line | awk -F "&" '{print $2}')
let i++
done
## 输出My系列变量
if [[ ${#code[*]} -gt 0 ]]; then
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
tmp_my_code=""
j=$((m + 1))
for ((n = 0; n < ${#code[*]}; n++)); do
if [[ ${pt_pin[m]} == ${pt_pin_in_log[n]} ]]; then
tmp_my_code=${code[n]}
break
fi
done
echo "$config_name_my$j='$tmp_my_code'"
done
else
echo "## 从日志中未找到任何互助码"
fi
## 输出ForOther系列变量
if [[ ${#code[*]} -gt 0 ]]; then
echo
case $HelpType in
0) ## 全部一致
tmp_for_other=""
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
j=$((m + 1))
tmp_for_other="$tmp_for_other@\${$config_name_my$j}"
done
echo "${config_name_for_other}1=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|"
for ((m = 1; m < ${#pt_pin[*]}; m++)); do
j=$((m + 1))
echo "$config_name_for_other$j=\"\${${config_name_for_other}1}\""
done
;;
1) ## 均等助力
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
tmp_for_other=""
j=$((m + 1))
for ((n = $m; n < $(($user_sum + $m)); n++)); do
[[ $m -eq $n ]] && continue
if [[ $((n + 1)) -le $user_sum ]]; then
k=$((n + 1))
else
k=$((n + 1 - $user_sum))
fi
tmp_for_other="$tmp_for_other@\${$config_name_my$k}"
done
echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|"
done
;;
2) ## 本套脚本内账号间随机顺序助力
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
tmp_for_other=""
random_num_list=$(seq $user_sum | sort -R)
j=$((m + 1))
for n in $random_num_list; do
[[ $j -eq $n ]] && continue
tmp_for_other="$tmp_for_other@\${$config_name_my$n}"
done
echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|"
done
;;
*) ## 按编号优先
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
tmp_for_other=""
j=$((m + 1))
for ((n = 0; n < ${#pt_pin[*]}; n++)); do
[[ $m -eq $n ]] && continue
k=$((n + 1))
tmp_for_other="$tmp_for_other@\${$config_name_my$k}"
done
echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|"
done
;;
esac
fi
else
echo "## 未运行过 $task_name.js 脚本,未产生日志"
fi
}
## 汇总输出
export_all_codes() {
gen_pt_pin_array
ps_num="$(ps | grep code.sh | grep -v grep | wc -l)"
[[ $DEBUG = "1" ]] && echo "# 当前 code.sh 的线程数量:$ps_num"
[[ $DEBUG = "1" ]] && echo -e "\n# 预设的 JD_COOKIE 数量:`echo $JD_COOKIE | grep -o 'pt_key' | wc -l`"
[[ $DEBUG = "1" ]] && echo -e "\n# 预设的 JD_COOKIE 环境变量数量:`echo $JD_COOKIE | sed 's/&/\n/g' | wc -l`"
[[ $DEBUG = "1" && "$(echo $JD_COOKIE | sed 's/&/\n/g' | wc -l)" = "1" && "$(echo $JD_COOKIE | grep -o 'pt_key' | wc -l)" -gt 1 ]] && echo -e "\n# 检测到您将多个 COOKIES 填写到单个环境变量值,请注意将各 COOKIES 采用 & 分隔,否则将无法完整输出互助码及互助规则!"
echo -e "\n# 从日志提取互助码编号和配置文件中Cookie编号完全对应如果为空就是所有日志中都没有。\n\n# 即使某个MyXxx变量未赋值也可以将其变量名填在ForOtherXxx中jtask脚本会自动过滤空值。\n"
echo -n "# 你选择的互助码模板为:"
case $HelpType in
0)
echo "所有账号助力码全部一致。"
;;
1)
echo "所有账号机会均等助力。"
;;
2)
echo "本套脚本内账号间随机顺序助力。"
;;
*)
echo "按账号编号优先。"
;;
esac
if [ "$ps_num" -gt 8 ]; then
echo -e "\n# 检测到 code.sh 的线程过多 ,请稍后再试!"
exit
elif [ -z $repo ]; then
echo -e "\n# 未检测到兼容的活动脚本日志,无法读取互助码,退出!"
exit
else
echo -e "\n# 优先读取 $repo 的脚本日志,格式化导出互助码,生成互助规则!"
for ((i = 0; i < ${#name_js[*]}; i++)); do
echo -e "\n## ${name_chinese[i]}"
export_codes_sub "${name_js[i]}" "${name_config[i]}" "${name_chinese[i]}"
done
for ((i = 0; i < ${#name_js_only[*]}; i++)); do
echo -e "\n## ${name_chinese_only[i]}"
export_codes_sub_only "${name_js_only[i]}" "${name_config_only[i]}" "${name_chinese_only[i]}"
done
fi
}
#更新配置文件中互助码的函数
help_codes(){
if [ -z "$(cat $file_task_before | grep "^My$1\d")" ]; then
echo "" >> $file_task_before
echo "My"$1"1=''" >> $file_task_before
echo "" >> $file_task_before
fi
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
for ((i=1; i<=$user_sum; i++)); do
new_code="$(cat $code_log_newest | grep "^My$1$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")"
old_code="$(cat $file_task_before | grep "^My$1$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")"
if [ -z "$(grep "^My$1$i" $file_task_before)" ]; then
sed -i "/^My$1$[$i-1]='.*'/ s/$/\nMy$1$i=\'\'/" $file_task_before
fi
if [[ "$new_code" != "" ]] && [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]]; then
if [ "$new_code" != "$old_code" ]; then
sed -i "s/^My$1$i='$old_code'$/My$1$i='$new_code'/" $file_task_before
fi
fi
if [[ "$new_code" != "" ]] && [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]]; then
if [ "$new_code" != "$old_code" ]; then
sed -i "s/^My$1$i='$old_code'$/My$1$i='$new_code'/" $file_task_before
fi
fi
done
}
help_codes_only(){
if [ -z "$(cat $file_task_before | grep "^$1\d")" ]; then
echo "" >> $file_task_before
echo "$11=''" >> $file_task_before
echo "" >> $file_task_before
fi
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
for ((i=1; i<=$user_sum; i++)); do
new_jxtoken="$(cat $code_log_newest | grep "^$1$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")"
old_jxtoken="$(cat $file_task_before | grep "^$1$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")"
if [ -z "$(grep "^$1$i" $file_task_before)" ]; then
sed -i "/^$1$[$i-1]='.*'/ s/$/\n$1$i=\'\'/" $file_task_before
fi
if [[ "$new_jxtoken" != "" ]] && [[ "$new_jxtoken" != "undefined" ]] && [[ "$new_jxtoken" != "{}" ]]; then
if [ "$new_jxtoken" != "$old_jxtoken" ]; then
sed -i "s/^$1$i='$old_jxtoken'$/$1$i='$new_jxtoken'/" $file_task_before
fi
fi
done
}
#更新配置文件中互助规则的函数
help_rules(){
if [ -z "$(cat $file_task_before | grep "^ForOther$1\d")" ]; then
echo "ForOther"$1"1=\"\"" >> $file_task_before
echo "" >> $file_task_before
fi
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
for ((i=1; i<=$user_sum; i++)); do
new_rule="$(cat $code_log_newest | grep "^ForOther$1$i=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")"
old_rule="$(cat $file_task_before | grep "^ForOther$1$i=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")"
if [ -z "$(grep "^ForOther$1$i" $file_task_before)" ]; then
sed -i "/^ForOther$1$[$i-1]=".*"/ s/$/\nForOther$1$i=\"\"/" $file_task_before
fi
if [ "$new_rule" != "" ]; then
if [ "$new_rule" != "$old_rule" ]; then
sed -i "s/^ForOther$1$i=\"$old_rule\"$/ForOther$1$i=\"$new_rule\"/" $file_task_before
fi
fi
done
}
export_codes_sub_only(){
if [ "$(cat $dir_scripts/"$repo"_jd_scripts_jd_cfd.js | grep "// console.log(\`token")" != "" ]; then
echo -e "\n# 正在修改 "$repo"_jd_scripts_jd_cfd.js ,待完全运行 "$repo"_jd_scripts_jd_cfd.js 后即可输出 token "
fi
sed -i 's/.*\(c.*log\).*\(${JSON.*token)}\).*/ \1(\`\\n【京东账号${$.index}${$.UserName}的京喜token好友互助码】\2\\n\`)/g' /ql/scripts/*_jd_cfd.js
local task_name=$1
local config_name=$2
local chinese_name=$3
local i j k m n pt_pin_in_log code tmp_grep tmp_my_code tmp_for_other user_num random_num_list
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
if cd $dir_log/$task_name &>/dev/null && [[ $(ls) ]]; then
## 寻找所有互助码以及对应的pt_pin
i=0
pt_pin_in_log=()
code=()
pt_pin_and_code=$(ls -r *.log | xargs awk -v var="$chinese_name好友互助码" 'BEGIN{FS="[ )】]+"; OFS="&"} $3~var {print $2,$4}')
for line in $pt_pin_and_code; do
pt_pin_in_log[i]=$(echo $line | awk -F "&" '{print $1}')
code[i]=$(echo $line | awk -F "&" '{print $2}')
let i++
done
## 输出互助码
if [[ ${#code[*]} -gt 0 ]]; then
for ((m = 0; m < ${#pt_pin[*]}; m++)); do
tmp_my_code=""
j=$((m + 1))
for ((n = 0; n < ${#code[*]}; n++)); do
if [[ ${pt_pin[m]} == ${pt_pin_in_log[n]} ]]; then
tmp_my_code=${code[n]}
break
fi
done
echo "$config_name$j='$tmp_my_code'"
done
else
echo "## 从日志中未找到任何互助码"
fi
fi
}
break_help(){
local BreakHelpInterval=$(echo $BreakHelpNum | perl -pe "{s|~|-|; s|_|-|}" | sed 's/\(\d\+\)-\(\d\+\)/{\1..\2}/g')
local BreakHelpNumType=$(echo $BreakHelpNum | sed 's/ //g' | perl -pe "{s|-||; s|~||; s|_||}" | sed 's/^\d\+$//g')
if [ $BreakHelpType = 1 ]; then
echo -e "\n# 您已启用屏蔽助力功能!"
if [ "$BreakHelpNumType" = "" ]; then
echo -e "\n# 当前屏蔽的账号序号或区间: $BreakHelpInterval "
echo -e "\n# 开始调整互助规则"
for i in $(eval echo $BreakHelpInterval); do
sed -i "s/@\${My[A-Za-z]\+$i}\|\${My[A-Za-z]\+$i}@//g" $file_task_before
done
echo -e "\n# 互助规则调整完成"
else
echo -e "\n# 变量值填写不规范,请检查后重试!"
fi
fi
}
#更新互助码和互助规则
update_help(){
code_log_newest=`ls -at $dir_code/* | head -n 1`
source $code_log_newest
case $UpdateType in
1)
if [ -f $code_log_newest ] && [ -f $file_task_before ]; then
mkdir -p $dir_config/bak
[[ $BAKUP = "1" ]] && cp $file_task_before $dir_config/bak/task_before_$log_time.sh
echo -e "\n# 开始更新配置文件的互助码和互助规则"
help_codes Fruit
help_rules Fruit
help_codes Pet
help_rules Pet
help_codes Bean
help_rules Bean
help_codes JdFactory
help_rules JdFactory
help_codes DreamFactory
help_rules DreamFactory
help_codes Jdzz
help_rules Jdzz
help_codes Joy
help_rules Joy
help_codes BookShop
help_rules BookShop
help_codes Cash
help_rules Cash
help_codes Jxnc
help_rules Jxnc
help_codes Sgmh
help_rules Sgmh
help_codes Cfd
help_rules Cfd
help_codes Health
help_rules Health
help_codes Carni
help_rules Carni
help_codes City
help_rules City
help_codes_only TokenJxnc
break_help
echo -e "\n# 配置文件的互助码和互助规则已完成更新"
elif [ ! -f $code_log_newest ]; then
echo -e "\n# 日志文件不存在,请检查后重试!"
elif [ ! -f $file_task_before ]; then
echo -e "\n# 配置文件不存在,请检查后重试!"
fi
;;
*)
echo -e "\n# 您已设置不更新配置文件的互助码和互助规则"
;;
esac
}
## 执行并写入日志
log_time=$(date "+%Y-%m-%d-%H-%M-%S")
log_path="$dir_code/$log_time.log"
make_dir "$dir_code"
export_all_codes | perl -pe "{s|京东种豆|种豆|; s|crazyJoy任务|疯狂的JOY|}" | tee $log_path
sleep 5
update_help

View File

@ -0,0 +1,346 @@
## Version: v2.8.0
## Date: 2021-06-20
## Update Content: 可持续发展纲要\n1. session管理破坏性修改\n2. 配置管理可编辑config下文件\n3. 自定义脚本改为查看脚本\n4. 移除互助相关
## 上面版本号中如果第2位数字有变化那么代表增加了新的参数如果只有第3位数字有变化仅代表更新了注释没有增加新的参数可更新可不更新
## 在运行 ql repo 命令时,是否自动删除失效的脚本与定时任务
AutoDelCron="true"
## 在运行 ql repo 命令时,是否自动增加新的本地定时任务
AutoAddCron="true"
## ql repo命令拉取脚本时需要拉取的文件后缀直接写文件后缀名即可
RepoFileExtensions="js py"
## 由于github仓库拉取较慢所以会默认添加代理前缀如不需要请移除
GithubProxyUrl="https://ghproxy.com/"
## 设置定时任务执行的超时时间默认1h后缀"s"代表秒(默认值), "m"代表分, "h"代表小时, "d"代表天
CommandTimeoutTime="1h"
## 设置批量执行任务时的并发数默认同时执行5个任务
MaxConcurrentNum="40"
## 在运行 task 命令时,随机延迟启动任务的最大延迟时间
## 默认给javascript任务加随机延迟如 RandomDelay="300" ,表示任务将在 1-300 秒内随机延迟一个秒数,然后再运行,取消延迟赋值为空
RandomDelay="300"
## 如果你自己会写shell脚本并且希望在每次运行 ql update 命令时,额外运行你的 shell 脚本,请赋值为 "true"默认为true
EnableExtraShell="true"
## 是否自动启动bot默认不启动设置为true时自动启动目前需要自行克隆bot仓库所需代码存到ql/repo目录下文件夹命名为dockerbot
AutoStartBot="true"
## 安装bot依赖时指定pip源默认使用清华源如不需要源设置此参数为空
PipMirror="https://pypi.tuna.tsinghua.edu.cn/simple"
## 通知环境变量
## 1. Server酱
## https://sct.ftqq.com
## 下方填写 SCHKEY 值或 SendKey 值
export PUSH_KEY=""
## 2. BARK
## 下方填写app提供的设备码例如https://api.day.app/123 那么此处的设备码就是123
export BARK_PUSH=""
## 下方填写推送声音设置例如choo具体值请在bark-推送铃声-查看所有铃声
export BARK_SOUND=""
## 3. Telegram
## 下方填写自己申请@BotFather的Token如10xxx4:AAFcqxxxxgER5uw
export TG_BOT_TOKEN=""
## 下方填写 @getuseridbot 中获取到的纯数字ID
export TG_USER_ID=""
## Telegram 代理IP选填
## 下方填写代理IP地址代理类型为 http比如您代理是 http://127.0.0.1:1080则填写 "127.0.0.1"
## 如需使用,请自行解除下一行的注释
export TG_PROXY_HOST=""
## Telegram 代理端口(选填)
## 下方填写代理端口号,代理类型为 http比如您代理是 http://127.0.0.1:1080则填写 "1080"
## 如需使用,请自行解除下一行的注释
export TG_PROXY_PORT=""
## Telegram 代理的认证参数(选填)
export TG_PROXY_AUTH=""
## Telegram api自建反向代理地址选填
## 教程https://www.hostloc.com/thread-805441-1-1.html
## 如反向代理地址 http://aaa.bbb.ccc 则填写 aaa.bbb.ccc
## 如需使用,请赋值代理地址链接,并自行解除下一行的注释
export TG_API_HOST=""
## 4. 钉钉
## 官方文档https://developers.dingtalk.com/document/app/custom-robot-access
## 下方填写token后面的内容只需 https://oapi.dingtalk.com/robot/send?access_token=XXX 等于=符号后面的XXX即可
export DD_BOT_TOKEN=""
export DD_BOT_SECRET=""
## 5. 企业微信机器人
## 官方说明文档https://work.weixin.qq.com/api/doc/90000/90136/91770
## 下方填写密钥,企业微信推送 webhook 后面的 key
export QYWX_KEY=""
## 6. 企业微信应用
## 参考文档http://note.youdao.com/s/HMiudGkb
## 下方填写素材库图片idcorpid,corpsecret,touser,agentid素材库图片填0为图文消息, 填1为纯文本消息
export QYWX_AM=""
## 7. iGot聚合
## 参考文档https://wahao.github.io/Bark-MP-helper
## 下方填写iGot的推送key支持多方式推送确保消息可达
export IGOT_PUSH_KEY=""
## 8. Push Plus
## 官方网站http://www.pushplus.plus
## 下方填写您的Token微信扫码登录后一对一推送或一对多推送下面的token只填 PUSH_PLUS_TOKEN 默认为一对一推送
export PUSH_PLUS_TOKEN=""
## 一对一多推送(选填)
## 下方填写您的一对多推送的 "群组编码" ,(一对多推送下面->您的群组(如无则新建)->群组编码)
## 1. 需订阅者扫描二维码 2、如果您是创建群组所属人也需点击“查看二维码”扫描绑定否则不能接受群组消息推送
export PUSH_PLUS_USER=""
## 9. go-cqhttp
## gobot_url 推送到个人QQ: http://127.0.0.1/send_private_msg 群http://127.0.0.1/send_group_msg
## gobot_token 填写在go-cqhttp文件设置的访问密钥
## gobot_qq 如果GOBOT_URL设置 /send_private_msg 则需要填入 user_id=个人QQ 相反如果是 /send_group_msg 则需要填入 group_id=QQ群
## go-cqhttp相关API https://docs.go-cqhttp.org/api
export GOBOT_URL=""
export GOBOT_TOKEN=""
export GOBOT_QQ=""
## 10. 临时屏蔽某个Cookie
## 如果某些Cookie已经失效了但暂时还没法更新可以使用此功能在不删除该Cookie和重新修改Cookie编号的前提下临时屏蔽掉某些编号的Cookie
## 多个Cookie编号以半角的空格分隔两侧一对半角双引号使用此功能后在运行js脚本时账户编号将发生变化
## 举例1TempBlockCookie="2" 临时屏蔽掉Cookie2
## 举例2TempBlockCookie="2 4" 临时屏蔽掉Cookie2和Cookie4
## 如果只是想要屏蔽某个账号不参加某些活动,可以参考下面 case 这个命令的例子来控制
## case $1 in
## *jd_fruit*)
## TempBlockCookie="5" # 账号5不玩东东农场
## ;;
## *jd_dreamFactory* | *jd_jdfactory*)
## TempBlockCookie="2" # 账号2不玩京喜工厂和东东工厂
## ;;
## *jd_jdzz* | *jd_joy*)
## TempBlockCookie="3 6" # 账号3、账号6不玩京东赚赚和宠汪汪
## ;;
## esac
## 其他需要的变量,脚本中需要的变量使用 export 变量名= 声明即可
# 定义每日签到的通知形式
## js脚本每日签到提供3种通知方式分别为
## 关闭通知那么请在下方填入0
## 简洁通知那么请在下方填入1其效果见https://github.com/LXK9301/jd_scripts/blob/master/icon/bean_sign_simple.jpg
## 原始通知那么请在下方填入2如果不填也默认为2内容比较长这也是默认通知方式
NotifyBeanSign=""
# 定义每日签到每个接口间的延迟时间
## 默认每个签到接口并发无延迟,如需要依次进行每个接口,请自定义延迟时间,单位为毫秒,延迟作用于每个签到接口, 如填入延迟则切换顺序签到(耗时较长)
export JD_BEAN_STOP=""
# 脚本推送控制类环境变量
## 1、京东多合一签到脚本关闭运行结果推送默认推送填true表示不推送
export JD_BEAN_SIGN_STOP_NOTIFY=""
## 2、京东多合一签到脚本推送简单结果默认推送完整版结果填true表示启用简单推送
export JD_BEAN_SIGN_NOTIFY_SIMPLE="true"
## 3、东东萌宠关闭推送。填写false为不关闭推送true为关闭推送
export PET_NOTIFY_CONTROL="false"
## 4、京东农场关闭推送。填写false为不关闭推送true为关闭推送
export FRUIT_NOTIFY_CONTROL="false"
## 5、京东领现金关闭推送。填写false为不关闭推送true为关闭推送
export CASH_NOTIFY_CONTROL="false"
## 6、京东摇钱树关闭推送。填写false为不关闭推送true为关闭推送
export MONEYTREE_NOTIFY_CONTROL="true"
## 7、京东点点券关闭推送。填写false为不关闭推送true为关闭推送
export DDQ_NOTIFY_CONTROL="false"
## 8、京东京东赚赚小程序关闭推送。填写false为不关闭推送true为关闭推送
export JDZZ_NOTIFY_CONTROL="false"
## 9、宠汪汪兑换京豆关闭推送。填写false为不关闭推送true为关闭推送
export JD_JOY_REWARD_NOTIFY="true"
## 10、宠汪汪赛跑获胜后是否推送通知。填false为不推送通知消息,true为推送通知消息
export JOY_RUN_NOTIFY="true"
## 11、东东超市兑换奖品是否关闭推送通知。填false为不关闭推送,true为关闭推送
export MARKET_REWARD_NOTIFY="false"
## 12、京喜财富岛控制是否运行脚本后通知。输入true为通知,不填则为不通知
export CFD_NOTIFY_CONTROL=""
## 13、京喜农场岛控制是否运行脚本后通知。0=只通知成熟;1=本次获得水滴>0;2=任务执行;3=任务执行+未种植种子
export JXNC_NOTIFY_LEVEL="3"
# 功能配置类环境变量
## 1、京东领现金红包兑换京豆开关。false为不换,true为换(花费2元红包兑换200京豆一周可换四次)默认为false
export CASH_EXCHANGE="false"
## 2、宠汪汪喂食数量。可以填的数字0,10,20,40,80,其他数字不可
export JOY_FEED_COUNT="80"
## 3、宠汪汪帮好友喂食。默认 "false" 不会自动给好友的汪汪喂食,如想自动喂食,请修改为 "true"
export JOY_HELP_FEED="true"
## 4、宠汪汪是否赛跑(默认参加双人赛跑)。false为不跑,true为跑
export JOY_RUN_FLAG="true"
## 5、宠汪汪参加什么级别的赛跑。可选数字为2,10,50
## 当JOY_RUN_FLAG不设置或设置为 "true" 时生效
## 可选值2,10,50其他值不可以。其中2代表参加双人PK赛10代表参加10人突围赛50代表参加50人挑战赛不填时默认为2
## 各个账号间请使用 & 分隔比如JOY_TEAM_LEVEL="2&2&50&10"
## 如果您有5个账号但只写了四个数字那么第5个账号将默认参加2人赛账号如果更多与此类似
export JOY_TEAM_LEVEL="2&2&50&10"
## 6、宠汪汪赛跑自己账号内部互助。输入true为开启内部互助
export JOY_RUN_HELP_MYSELF="true"
## 7、宠汪汪积分兑换多少京豆。目前可填值为20或者500,脚本默认0,0表示不兑换京豆
export JD_JOY_REWARD_NAME="500"
## 8、东东超市兑换京豆数量。目前可输入值为20或者1000或者其他商品的名称,例如碧浪洗衣凝珠
export MARKET_COIN_TO_BEANS="超值京豆包"
## 9、东东超市是否参加pk。true表示参加,false表示不参加
export JOIN_PK_TEAM="true"
## 10、东东超市是否用金币抽奖。true表示抽奖,false表示不抽奖
export SUPERMARKET_LOTTERY="true"
## 11、东东农场是否使用水滴换豆卡。true表示换,false表示不换
export FRUIT_BEAN_CARD="true"
## 12、是否取关商品。环境变量内容的意思依次是是否取关全部商品(0表示一个都不),是否取关全部店铺数(0表示一个都不),遇到此商品不再进行取关,遇到此店铺不再进行取关
export UN_SUBSCRIBES="300,300,,"
## 12、定义 unsubscribe 取关参数
## 具体教程https://gitee.com/lxk0301/jd_docker/blob/master/githubAction.md#%E5%8F%96%E5%85%B3%E5%BA%97%E9%93%BAsecret%E7%9A%84%E8%AF%B4%E6%98%8E
## jd_unsubscribe这个任务是用来取关每天做任务关注的商品和店铺默认在每次运行时取关20个商品和20个店铺
## 如果取关数量不够,可以根据情况增加,还可以设置 jdUnsubscribeStopGoods 和 jdUnsubscribeStopShop
## 商品取关数量
goodPageSize="30"
## 店铺取关数量
shopPageSize="60"
## 遇到此商品不再取关此商品以及它后面的商品,需去商品详情页长按拷贝商品信息
jdUnsubscribeStopGoods=""
## 遇到此店铺不再取关此店铺以及它后面的店铺,请从头开始输入店铺名称
jdUnsubscribeStopShop=""
## 13、疯狂的JOY循环助力开关。true表示循环助力,false表示不循环助力默认不开启循环助力
export JDJOY_HELPSELF="true"
## 14、疯狂的JOY京豆兑换。0表示不换,其他按可兑换数填写。目前最小2000
export JDJOY_APPLYJDBEAN="2000"
## 15、疯狂的JOY购买joy等级。如需要使用请自行解除注释可购买等级为 "1~30"
export BUY_JOY_LEVEL=""
## 16、摇钱树是否卖出金果。true卖出false不卖出默认false
export MONEY_TREE_SELL_FRUIT="true"
## 17、东东工厂心仪商品。
export FACTORAY_WANTPRODUCT_NAME=""
## 18、东东工厂控制哪个京东账号不运行此脚本。多个使用&连接
export JDFACTORY_FORBID_ACCOUNT=""
## 19、京喜工厂控制哪个京东账号不运行此脚本。多个使用&连接
export DREAMFACTORY_FORBID_ACCOUNT=""
## 20、lxk0301脚本是否加购。如加设置true
export PURCHASE_SHOPS="true"
## 21、京喜工厂拼团瓜分电力活动的activeId当前需抓包替换或去群里求别人分享
export TUAN_ACTIVEID=""
# 阿道夫部分环境变量
## 1、阿道夫脚本加购开关填true加购
export ADOLF_ADDSKU="true"
## 2、阿道夫脚本入会开关填true入会
export ADOLF_MARTIN="true"
# zoopanda 部分环境变量
## 1、zoopanda 与粽不同入会
export ZOO_OPENCAD="true"
## 2、zoopanda 与粽不同加购
export ZOO_ADD2CART="true"
# 龙猪猪环境变量
## 京豆雨通知填写true为不关闭推送false为关闭推送
export RAIN_NOTIFY_CONTROL="false"
## 整点京豆雨RRA
export SUPER_RAIN_RRA=""
## 半点京豆雨RRA
export HALF_RAIN_RRA=""
# JDHelloWorld 部分环境变量
## 宠汪汪二代目
### 默认8010、20、40、80可选
export feedNum="80"
### 默认双人跑
export JD_JOY_teamLevel="2"
# 柠檬(胖虎部分环境变量)
## 1、京喜工厂抢茅台
### 自定义商品变量
export shopid="1598" ##你要商品ID 冰箱
export shopid1="1607" ##你要商品ID 茅台
## 2、推一推
### 入口:极速版-赚金币
### 分享到QQ查看邀请码packetId就是
### 自定义变量
export tytpacketId=""
## 3、拆红包
export chbpacketId=""
## 4、是兄弟就砍我
### 是兄弟就来砍我脚本要参加砍价的商品ID
export actId=""
export actId1=""
export actId2=""
export actId3=""
export actId4=""
### 是兄弟就来砍我脚本要要参加砍价的邀请码
export packetId=""
## 5、是兄弟就砍我2
### 惊喜欢乐砍 自定义变量 入口京喜APP-我的-惊喜欢乐砍
export launchid="" ##你的邀请码
### 第一次参加变量设置为true查看商品ID填写商品ID后自动获取邀请码邀请如果只助力变量设置为false
export first="false"
export active="" ##商品ID
## 6、赚金币
### 入口:极速版-百元生活费-赚金币-邀请好友
### 第一次运行可不填写邀请码,运行一次查看自己的邀请码
export InviterPin="" ##你的邀请码
## 7、0元砍价入口京东-我的-0元砍价
### 使用教程:
### 第一步运行脚本一次日志查看商品ID
### 获取你要砍价的商品ID后变量填写
export skuId="" ##这里填获取的商品ID
### 第二步再运行一次日志查看商品activityId变量填写
export activity="" ##这里填获取的商品activityId
## 8、邀请有礼
### 自定义邀请码环境变量
export yqm="" ##你的邀请码
## 9、全民挖现金
### 入口:京东-我的-全民挖现金
### 运行一次查看邀请码 变量你的邀请码
export shareCode=""
## 10、省钱大赢家本期活动ID
export redEnvelopeId=""
## 11、省钱大赢家邀请码
export inviter=""
## 12、签到领现金添加变量方式
## 自行添加变量设置邀请码 格式如下 默认10个
export cashinviteCode=""
export cashinviteCode2=""
export cashinviteCode3=""
## 13、大老板农场 新增自定义变量通知开关。true通知打开false为关闭
export dlbtz="true"
# curtinlv 环境变量
## 1、赚京豆
### 助力账号填写pt_pin或用户名的值如 zlzh = ['aaaa','xxxx','yyyy'] 支持ENV
export zlzh=['CurtinLV','xxxx','yyyy']
## 2、入会开卡
### int入会送豆满足此值否则不入会
export openCardBean="30"
### 布尔值是否记录符合条件的shopid(默认True)
export record="true"
### 布尔值, True:仅记录,不入会(默认False)
export onlyrecord="false"
### 布尔值,开启记忆功能,接力上一次异常中断位置继续。(默认yes)
export memory="false"
### 布尔值True只打印部分日志 False:打印所有日志
export printlog="true"
### Float限制速度单位秒如果请求过快报错适当调整0.5秒以上
export sleepNum="0.5"
### 布尔值True:使用作者远程仓库更新的idFalse使用本地shopid.txt的id
export isRemoteSid="true"
# Wenmoux 部分环境变量
## 1、QQ星系牧场自动兑换20豆
export Cowexchange="true"
## 欧洲狂欢杯兑换兑换豆子填38豆子填39e卡
export Cupexid="39"
## 10秒阅读
## 填写自己CK
export Readck=""
## 填写自己设备UA
export Read10UA=""
## 填true推送消息默认不推送
export jrpush=""

View File

@ -0,0 +1,183 @@
#!/usr/bin/env bash
#Build 20210703-001
## 东东农场:
MyFruit1=''
ForOtherFruit1=""
## 东东萌宠:
MyPet1=''
ForOtherPet1=""
## 种豆得豆:
MyBean1=''
ForOtherBean1=""
## 京喜工厂:
MyDreamFactory1=''
ForOtherDreamFactory1=""
## 东东工厂:
MyJdFactory1=''
ForOtherJdFactory1=""
## 疯狂的JOY
MyJoy1=''
ForOtherJoy1=""
## 京东赚赚:
MyJdzz1=''
ForOtherJdzz1=""
## 京喜农场:
MyJxnc1=''
ForOtherJxnc1=""
## 口袋书店:
MyBookShop1=''
ForOtherBookShop1=""
## 签到领现金:
MyCash1=''
ForOtherCash1=""
## 闪购盲盒:
MySgmh1=''
ForOtherSgmh1=""
## 京喜财富岛:
MyCfd1=''
ForOtherCfd1=""
## 东东健康社区:
MyHealth1=''
ForOtherHealth1=""
## 京东手机狂欢城:
MyCarni1=''
ForOtherCarni1=""
## 城城领现金:
MyCity1=''
ForOtherCity1=""
## 京喜农场 Token (可用于京喜财富岛提现等)
TokenJxnc1=''
env_name=(
FRUITSHARECODES ## 东东农场互助码
PETSHARECODES ## 东东萌宠互助码
PLANT_BEAN_SHARECODES ## 种豆得豆互助码
DREAM_FACTORY_SHARE_CODES ## 京喜工厂互助码
DDFACTORY_SHARECODES ## 东东工厂互助码
JDJOY_SHARECODES ## 疯狂的JOY互助码
JDZZ_SHARECODES ## 京东赚赚互助码
JXNC_SHARECODES ## 京喜农场助力码
BOOKSHOP_SHARECODES ## 口袋书店互助码
JD_CASH_SHARECODES ## 签到领现金互助码
JDSGMH_SHARECODES ## 闪购盲盒互助码
JDCFD_SHARECODES ## 京喜财富岛互助码
JDHEALTH_SHARECODES ## 东东健康社区互助码
CITY_SHARECODES ## lxk城城领现金
JD818_SHARECODES ## lxk手机狂欢城
jxcollecturl ## 执意Ariszy京喜工厂收取电力
MyZooPk
MyZoo
JXNCTOKENS ## 京喜农场 token(京喜财富岛提现用)
)
var_name=(
ForOtherFruit
ForOtherPet
ForOtherBean
ForOtherDreamFactory
ForOtherJdFactory
ForOtherJoy
ForOtherJdzz
ForOtherJxnc
ForOtherBookShop
ForOtherCash
ForOtherSgmh
ForOtherCfd
ForOtherHealth
ForOtherCarni
ForOtherCity
Jxcollecturl
MyZooPk
MyZoo
TokenJxnc
)
combine_sub() {
local what_combine=$1
local combined_all=""
local tmp1 tmp2
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
local user_sum=${#array[*]}
for ((i = 1; i <= $user_sum; i++)); do
local tmp1=$what_combine$i
local tmp2=${!tmp1}
combined_all="$combined_all&$tmp2"
done
echo $combined_all | perl -pe "{s|^&||; s|^@+||; s|&@|&|g; s|@+&|&|g; s|@+|@|g; s|@+$||}"
}
## 正常依次运行时组合所有账号的Cookie与互助码
combine_all() {
for ((i = 0; i < ${#env_name[*]}; i++)); do
result=$(combine_sub ${var_name[i]})
if [[ $result ]]; then
export ${env_name[i]}="$result"
fi
done
}
#if [[ $(ls $dir_code) ]]; then
# latest_log=$(ls -r $dir_code | head -1)
# . $dir_code/$latest_log
combine_all
#fi
## 临时屏蔽某账号运行活动脚本
TempBlock_JD_COOKIE(){
. /$file_env
local envs=$(eval echo "\$JD_COOKIE")
local array=($(echo $envs | sed 's/&/ /g'))
for i in $TempBlockCookie; do
unset array[$(($i-1))]
done
jdCookie=$(echo ${array[*]} | sed 's/\ /\&/g')
[[ ! -z $jdCookie ]] && export JD_COOKIE="$jdCookie"
}
TempBlock_JD_COOKIE

View File

@ -40,7 +40,7 @@
"time":"0 0 0 * * *",
"job":{
"type":"runjs",
"target":"https://raw.githubusercontent.com/ztxtop/x/aa4ddeca813fbf5c231dd4adaec68a7632cb292c/jx_cfdtx.js"
"target":"jx_cfdtx.js"
},
"running":true
},

View File

@ -60,13 +60,9 @@ ql repo https://github.com/photonmang/quantumultX.git "JDscripts"
### 名称之后标注`﹢`的单脚本,若上面已拉取仓库的可以不拉,否则会重复拉取。这里适用于只拉取部分脚本使用
> `curtinlv`
⏱ 三处 cron 推荐
>> 抢京豆
```
15 8 * * *
```
>> 赚京豆
```
ql raw https://raw.githubusercontent.com/curtinlv/JD-Script/main/jd_zjd.py
ql raw https://raw.githubusercontent.com/Oreomeow/JD-Script/main/jd_qjd.py
```
>> 入会
```
@ -109,4 +105,4 @@ ql repo https://github.com/longzhuzhu/nianyu.git "qx"
- `panghu999/panghu`
```
ql repo https://github.com/panghu999/panghu.git "jd_"
```
```