From 02daba5ff206b9a30edb61259186c402f440e6b1 Mon Sep 17 00:00:00 2001 From: Leon <62660101+Oreomeow@users.noreply.github.com> Date: Sat, 17 Jul 2021 13:43:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9D=8CDel?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Scripts/sh/Helpcode2.8/Doc.txt | 84 ---- Scripts/sh/Helpcode2.8/Updatelog.txt | 92 ---- Scripts/sh/Helpcode2.8/Usage.txt | 96 ---- Scripts/sh/Helpcode2.8/code.sh | 597 ------------------------ Scripts/sh/Helpcode2.8/config_sample.sh | 410 ---------------- Scripts/sh/Helpcode2.8/task_before.sh | 183 -------- 6 files changed, 1462 deletions(-) delete mode 100644 Scripts/sh/Helpcode2.8/Doc.txt delete mode 100644 Scripts/sh/Helpcode2.8/Updatelog.txt delete mode 100644 Scripts/sh/Helpcode2.8/Usage.txt delete mode 100644 Scripts/sh/Helpcode2.8/code.sh delete mode 100644 Scripts/sh/Helpcode2.8/config_sample.sh delete mode 100644 Scripts/sh/Helpcode2.8/task_before.sh diff --git a/Scripts/sh/Helpcode2.8/Doc.txt b/Scripts/sh/Helpcode2.8/Doc.txt deleted file mode 100644 index 99d86b5..0000000 --- a/Scripts/sh/Helpcode2.8/Doc.txt +++ /dev/null @@ -1,84 +0,0 @@ -[ 信物 : code.sh ] -2021.7.12.003 -1、curtinlv 京东超市兑换脚本的参数及入会领豆配置文件的参数修改代码的优化。 - -2021.7.12.002 -1、支持通过 Wenmoux 温某人的修复版口袋书店活动脚本日志,格式化导出互助码。须提前拉取 Wenmoux 温某人的仓库或脚本,并完整运行; -2、取消 code.sh 对 task_before.sh 口袋书店互助码的改写限制。 - -2021.7.12.001 -1、经过认真考虑,规则作了调整:除了口袋书店以外,code.sh还是会将互助码或互助规则的空值更新到 task_before.sh 。避免屏蔽模式和临时屏蔽账号运行脚本情况下,还是会向活动脚本提交互助码; - -2021.7.11.003 -1、修正某些情况下屏蔽模式的范围扩大的 BUG (感谢 @tianliu 测试反馈); -2、增加每次运行前强行终止一切 code.sh 进程。 - -2021.7.11.002 -1、集成修改curtinlv京东超市兑换脚本 cookies 环境变量的参数。原因:该环境变量在 config.sh 中设置无效。 - -2021.7.11.001 -1、改进更新互助码和互助规则的代码。当临时屏蔽账号时,所有账号靠前排位,自动剔除 task_before.sh 中多余的互助码和互助规则。 - -2021.7.10.001 -1、改进屏蔽模式,加入 pt_pin 用户名校验,以应对临时帐号禁用时,屏蔽模式序号错误的问题。此外,日志可以直出启用屏蔽模式的互助规则; -2、修复全部一致助力模板的错误; -3、格式化导出用户名改进为格式化导出用户名和 COOKIES ,以用于 V4 面板或其他用途; -4、改进自定义调用仓库脚本日志用法。详见脚本或使用方法; -5、增加删除指定天数前的 task_before 备份文件的功能; -6、鉴于长期观察,默认线程控制数下调到 7 ,避免线程数过多出错。 -注:由于当前青龙面板存在脚本跑不完的BUG,所以建议定时任务的命令统一改成 bash /ql/config/code.sh &,避免互助码输出不完整。 - -2021.7.7.001 -1、增加指定活动使用指定互助模板功能。 -2、增加每个活动采用哪种互助模板的日志输出。 -3、增加改写 task_before.sh:显示上次完成更新互助码和互助规则的时间。 - -[ 信物 : task_before.sh ] -2021.7.14-002 -本次更新主要在于修复临时禁止某账号参加(某些)活动一些互助码提交异常的问题。 -目前应用策略是: -1、首次设定好屏蔽账号序号后,相关账号的ck立即禁止提交活动脚本,但是task_before中的所有互助码第一次还是会提交活动。(其实相关互助码被立刻禁止提交活动脚本的代码已经写好,但是还没想好 code.sh 怎么适配这种情况下导出互助码,所以暂时#注释之); -2、待各活动脚本运行过一次后,code.sh会格式化导出过滤掉屏蔽账号的互助码和互助规则并更新到 task_before。之后再运行活动脚本就是屏蔽账号ck和互助码都不提交的状态了。 - -2021.7.14-001 -1、修正临时屏蔽账号参加某活动的范围扩大的BUG。 - -2021.7.12-001 -1、完善临时屏蔽某个 COOKIES 参加某个活动功能:禁止被屏蔽的账号助力其他人。 - -2021.7.3 -1、搭配最新 config.sh 模板的临时屏蔽某个 COOKIES 参加某个活动实现相应功能。 - -2021.7.2 -1、添加了京喜农场 Token 原始模板。可用于京喜财富岛提现。 - -[ 信物 : config_sample.sh ] -2021.7.14.001 -1、涉及pt_pin的环境变量全部默认改为中文显示。 - -2021.7.11.005 -1、增加 cdle 大佬"签到领现金兑换"环境变量(自动代码,默认为兑2元现金,可以改成兑10元现金)。 - -2021.7.11.004 -1、增加 cdle 大佬"全民运动会守卫红包"环境变量(需手动抓包)。 - -2021.7.11.003 -1、增加 cdle 大佬"愤怒的锦鲤"环境变量(自动代码,无需填写)。 - -2021.7.11.002 -1、屏蔽 curtinlv京东超市兑换脚本 cookies 环境变量的参数。原因:该环境变量在 config.sh 中设置无效。 - -2021.7.7.001 -1、调整Curtinlv变量的注释。 - -2021.7.5.001 - -1、添加点点券的环境变量。京东UA; -2、Curtinlv 的变量用填入代码,自动格式化 JD_COOKIE 。 - -说明: -①config.sh模板,适用于青龙 2.8.0。整合了Oreo大佬的最新环境变量。 -②注意:青龙面板的对比工具,呈现的 config.sample.sh 其实是 /ql/sample/路径下的文件,不是 /ql/config/ 路径下的。所以无论你怎么折腾 /ql/config/ 路径的这个文件模板,都无法使用青龙面板进行对比。建议使用 Beyond Compare 等第三方软件对附件和自己的 config.sh 进行对比更新。 - -频道:https://t.me/update_help -交流群:https://t.me/update_help_group \ No newline at end of file diff --git a/Scripts/sh/Helpcode2.8/Updatelog.txt b/Scripts/sh/Helpcode2.8/Updatelog.txt deleted file mode 100644 index d023c0c..0000000 --- a/Scripts/sh/Helpcode2.8/Updatelog.txt +++ /dev/null @@ -1,92 +0,0 @@ -־ - -2021.7.12.003 -1curtinlv жһűIJ춹ļIJ޸ĴŻ - -2021.7.12.002 -1֧ͨ Wenmoux ij˵޸ڴű־ʽ롣ǰȡ Wenmoux ij˵IJֿűУ -2ȡ code.sh task_before.sh ڴ껥ĸдơ - -2021.7.12.001 -1濼ǣ˵˿ڴ⣬code.shǻὫĿֵµ task_before.sh ģʽʱ˺нű£ǻűύ룻 -2task_before.sh£ʱij COOKIES μijܣֹε˺ˡ - -2021.7.11.003 -1ijЩģʽķΧ BUG (л @tianliu Է) -2ÿǰǿֹһ code.sh ̡ - -2021.7.11.002 -1޸curtinlvжһű cookies IJԭ򣺸û config.sh Ч - -2021.7.11.001 -1Ľ»ͻĴ롣ʱ˺ʱ˺ſǰλԶ޳ task_before.sh жĻͻ - -2021.7.10.001 -1Ľģʽ pt_pin ûУ飬ӦʱʺŽʱģʽŴ⡣⣬־ֱģʽĻ -2޸ȫһģĴ -3ʽûĽΪʽû COOKIES V4 ; -4ĽԶòֿű־÷űʹ÷ -5ɾָǰ task_before ļĹܡ -עڵǰڽűܲBUGԽ鶨ʱͳһij bash /ql/config/code.sh &⻥ - -2021.7.7.002 -1task_before.shϴεʾעͷ# - -2021.7.7.001 -1ָʹָģ幦ܡ -2ÿֻģ־ -3Ӹд task_before.shʾϴɸ»ͻʱ䡣 - -2021.7.4.001 -1ӵ˺ûĹ(˺dzƣ֧ʾ) - -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.shtask_before.shȡ԰ոckԤ docker exec -it qinglong ql update κ code.sh - -2021.6.26 -1ƲֿԴĽűԶ壻 -2޸˸д task_before.sh űIJִ룺ȡ 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 -1upcodes.sh ϲ code.sh - -2021.6.23 -1淢 \ No newline at end of file diff --git a/Scripts/sh/Helpcode2.8/Usage.txt b/Scripts/sh/Helpcode2.8/Usage.txt deleted file mode 100644 index 17d943e..0000000 --- a/Scripts/sh/Helpcode2.8/Usage.txt +++ /dev/null @@ -1,96 +0,0 @@ -ʹ÷ - -code.sh ǻ 2.2.0 code.sh ޸Ķ֧ 2.8.0 ϡҪܰʽͻ򣬲Զд task_before.sh ļеĻͻ򣻢ֻ֧ģ޸ģָ֧ָģ壻֧ʱij˺ű(Щ˺Կ˺)֧ COOKIES ʽ֧Զݾɵ task_before.sh ɾڵı(Զʱ) - -Ҫԭ -a) code.sh Ҫ׶Σ -1һ׶ΣӸű־룬 COOKIES pt_pin (û)УѡĻģ壬ɶӦĻĻͻ 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 ֵô task_before.sh ĻͻҲӦ(˿ڴ) - -һ廥Զ¼񡣿Զȡµĸʽ־Զ task_before.sh еĻ롣 -1 code.sh ׵ task_before.sh ű·/ql/config/ǰѽ·ӳ򿽱Ӧ·ɣ -ע code.sh ṩ task_before.sh ģʹáʹļ³ֻύʧܵ⣬Ҽ֡ - -2ʽ»Ķʱ -ƣʽ» -bash /ql/config/code.sh & -ʱ10 * * * * -עǧҪ task /ql/config/code.shֱҿܵ»ͻд벻Ŀǰ"ֶ;޷" BUGʵĩβ" &"()ʱԹܸ BUG - -3Ҫȡű־ܸʽĻ뼰򡣶ӦIJֿȡö"XXXXXXXXXX:XXάIJֿ" -## ԤIJֿ⼰Ĭϵòֿ -## "repo=$repo1"ijrepo=$repo2"Ĭϵֿű־ -## Ҳűڵ"name_js=(""name_js_only","repo"ij"repo2"ϵòֿĽű־ -repo1='panghu999_jd_scripts' #Ԥ panghu999 ֿ -repo2='JDHelloWorld_jd_scripts' #Ԥ JDHelloWorld ֿ -repo3='he1pu_JDHelp' #Ԥ he1pu ֿ -repo4='shufflewzc_faker2' #Ԥ shufflewzc ֿ -repo=$repo1 #Ĭϵ panghu999 ֿű־ - -4ϲũ Token ķ -a) ǰ᣺µ task_before.sh ģ壬ϲƸ޷ȡ token -b) 裺һ code.shٸ־ʾȲֿ⣬һξϲƸűһ code.sh -עb) code.sh ʱϾϲƸԶҪע⣺ٴϲƸĶʱȽϳʱҲܳԶҪȵ賿ǰŻ token ռ롣 config.sh ĬϵĶʱʱʱΪ 1h ʺűȽ϶࣬1h ϲƸ꣬ôͻᵼ token ʼռ롣Ҹ˰ѳʱʱó 3hCommandTimeoutTime="3h" -c⣺ -1) task_before.sh Token ǿֵ -𣺱 code.sh "ϲƸĽűʽϲtoken"ܽһȲֿľϲƸű code.sh Token ܻ޷дд벻 -2) task_before.sh Token дǾϲƸֻǶȡ Token -𣺢ȷ task_before.sh °棬Աȶļöģĵ Build š - ھϲƸ conc JD_COOKIE ̣߳ᵼ Token ȡ쳣 - -ԶIJã -1Զ廥ģ嶨 -## jcode űĻģʽѡ -## ʹá˳ģ塱Cookieǰ -## 0 ʹáȫһ»ģ塱˻Ҫȫһ -## 1 ʹáȻụģ塱˻һ -## 2 ʹá˳ģ塱׽ű˺ż˳ÿɵ˳򶼲һ¡ -HelpType="1" - -## ָָĻģ塣 -## 趨ֵΪ DiyHelpType="1" ʾùܣݱʾܡ -## ֻҪijִijֻ򣬿Բο case -## Ʋμ name_config ݣڱű name_config=( Ϥ -DiyHelpType="0" -diy_help_rules(){ - case $1 in - Fruit) - tmp_helptype="0" # ũʹáȫһ»ģ塱˻Ҫȫһ - ;; - DreamFactory | JdFactory) - tmp_helptype="1" # ϲͶʹáȻụģ塱˻һ - ;; - Jdzz | Joy) - tmp_helptype="2" # ׬׬ͷJoyʹá˳ģ塱׽ű˺ż˳ÿɵ˳򶼲һ¡ - ;; - *) - tmp_helptype=$HelpType # ԰Ĭϻģ - ;; - esac -} - -2ԶǷ޸ļ -## ǷԶļеĻͻĬΪ1ʾ£ջֵʾ¡ -UpdateType="1" - -3Զ task_before.sh ɾָǰıļ -## ļأĬ1ʾΪ0ʾرա· /ql/config/bak/ -BACKUP="1" -## ǷɾָǰıļأĬ1ʾΪ0ʾرաɾ· /ql/config/bak/ -CLEANBAK="1" -## ɾָǰıļ -CLEANBAK_DAYS="2" - -4֧Զָij˺Ųμij(ö config_sample.sh task_before.sh ģʹ) - -5Զָ˻ӰЩʺʺš code.sh ݣ - -6Ѽ⵽ code.shУ˵ code.sh ̹߳࣬ǿУܻᵼ»͹д쳣ǵһԡҪǿУ£ -޸config.sh -־߳ 9 - - code.sh -"$ps_num" -le 7 "$ps_num" -gt 7 - 7 ij 9Ȼ code.sh ͿˣôΪһơ \ No newline at end of file diff --git a/Scripts/sh/Helpcode2.8/code.sh b/Scripts/sh/Helpcode2.8/code.sh deleted file mode 100644 index 57494f8..0000000 --- a/Scripts/sh/Helpcode2.8/code.sh +++ /dev/null @@ -1,597 +0,0 @@ -#!/usr/bin/env bash - -#Build 20210712-003 - -## 导入通用变量与函数 -dir_shell=/ql/shell -. $dir_shell/share.sh - -## 预设的仓库及默认调用仓库设置 -## 将"repo=$repo1"改成repo=$repo2"或其他,以默认调用其他仓库脚本日志 -## 也可自行搜索本脚本内的"name_js=("和"name_js_only",将"repo"改成"repo2"或其他,用以自由组合调用仓库的脚本日志 -repo1='panghu999_jd_scripts' #预设的 panghu999 仓库 -repo2='JDHelloWorld_jd_scripts' #预设的 JDHelloWorld 仓库 -repo3='he1pu_JDHelp' #预设的 he1pu 仓库 -repo4='shufflewzc_faker2' #预设的 shufflewzc 仓库 -repo5='Wenmoux_scripts_wen_chinnkarahoi' #预设的 Wenmoux 仓库,用于读取口袋书店互助码。需提前拉取温某人的仓库或口袋书店脚本并完整运行。 -repo=$repo1 #默认调用 panghu999 仓库脚本日志 - -## 调试模式开关,默认是0,表示关闭;设置为1,表示开启 -DEBUG="1" - -## 备份配置文件开关,默认是1,表示开启;设置为0,表示关闭。备份路径 /ql/config/bak/ -BACKUP="1" -## 是否删除指定天数以前的备份文件开关,默认是1,表示开启;设置为0,表示关闭。删除路径 /ql/config/bak/ -CLEANBAK="1" -## 定义删除指定天数以前的备份文件 -CLEANBAK_DAYS="2" - -## 定义 jcode 脚本导出的互助码模板样式(选填) -## 不填 使用“按编号顺序互助模板”,Cookie编号在前的优先助力 -## 填 0 使用“全部一致互助模板”,所有账户要助力的码全部一致 -## 填 1 使用“均等机会互助模板”,所有账户获得助力次数一致 -## 填 2 使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 -HelpType="1" - -## 定义指定活动采用指定的互助模板。 -## 设定值为 DiyHelpType="1" 表示启用功能;不填或填其他内容表示不开启功能。 -## 如果只是想要控制某个活动以执行某种互助规则,可以参考下面 case 这个命令的例子来控制 -## 活动名称参见 name_config 定义内容;具体可在本脚本中搜索 name_config=( 获悉 -DiyHelpType="0" -diy_help_rules(){ - case $1 in - Fruit) - tmp_helptype="0" # 东东农场使用“全部一致互助模板”,所有账户要助力的码全部一致 - ;; - DreamFactory | JdFactory) - tmp_helptype="1" # 京喜工厂和东东工厂使用“均等机会互助模板”,所有账户获得助力次数一致 - ;; - Jdzz | Joy) - tmp_helptype="2" # 京东赚赚和疯狂的Joy使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 - ;; - *) - tmp_helptype=$HelpType # 其他活动仍按默认互助模板生产互助规则。 - ;; - esac -} - -## 定义屏蔽模式。被屏蔽的账号将不被助力,被屏蔽的账号仍然可以助力其他账号。 -## 设定值为 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_fruit - "$repo"_jd_pet - "$repo"_jd_plantBean - "$repo"_jd_dreamFactory - "$repo"_jd_jdfactory - "$repo"_jd_crazy_joy - "$repo"_jd_jdzz - "$repo"_jd_jxnc - "$repo5"_jd_bookshop - "$repo"_jd_cash - "$repo"_jd_sgmh - "$repo"_jd_cfd - "$repo"_jd_health - "$repo"_jd_carnivalcity - "$repo"_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_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:去掉后缀的脚本名称,$2:config.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 tmp_helptype=$HelpType - local BreakHelpInterval=$(echo $BreakHelpNum | perl -pe "{s|~|-|; s|_|-|}" | sed 's/\(\d\+\)-\(\d\+\)/{\1..\2}/g') - local BreakHelpNumArray=($(eval echo $BreakHelpInterval)) - local BreakHelpNumVerify=$(echo $BreakHelpNum | sed 's/ //g' | perl -pe "{s|-||; s|~||; s|_||}" | sed 's/^\d\+$//g') - local i j k m n t 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 - [[ $DiyHelpType = "1" ]] && diy_help_rules $2 - case $tmp_helptype in - 0) ## 全部一致 - HelpTemp="全部一致" - echo -e "\n## 采用\"$HelpTemp\"互助模板:" - tmp_for_other="" - for ((m = 0; m < ${#pt_pin[*]}; m++)); do - j=$((m + 1)) - if [ $BreakHelpType = 1 ]; then - if [ "$BreakHelpNumVerify" = "" ]; then - for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do - [[ "${BreakHelpNumArray[t]}" = "$j" ]] && continue 2 - done - tmp_for_other="$tmp_for_other@\${$config_name_my$j}" - else - echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" - tmp_for_other="$tmp_for_other@\${$config_name_my$j}" - fi - else - tmp_for_other="$tmp_for_other@\${$config_name_my$j}" - fi - 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=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" - done - ;; - - 1) ## 均等助力 - HelpTemp="均等助力" - echo -e "\n## 采用\"$HelpTemp\"互助模板:" - 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 - if [ $BreakHelpType = 1 ]; then - if [ "$BreakHelpNumVerify" = "" ]; then - for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do - [[ "${BreakHelpNumArray[t]}" = "$k" ]] && continue 2 - done - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - else - echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - fi - else - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - fi - done - echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" - done - ;; - - 2) ## 本套脚本内账号间随机顺序助力 - HelpTemp="随机顺序" - echo -e "\n## 采用\"$HelpTemp\"互助模板:" - 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 - if [ $BreakHelpType = 1 ]; then - if [ "$BreakHelpNumVerify" = "" ]; then - for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do - [[ "${BreakHelpNumArray[t]}" = "$n" ]] && continue 2 - done - tmp_for_other="$tmp_for_other@\${$config_name_my$n}" - else - echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" - tmp_for_other="$tmp_for_other@\${$config_name_my$n}" - fi - else - tmp_for_other="$tmp_for_other@\${$config_name_my$n}" - fi - done - echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" - done - ;; - - *) ## 按编号优先 - HelpTemp="按编号优先" - echo -e "\n## 采用\"$HelpTemp\"互助模板" - 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)) - if [ $BreakHelpType = 1 ]; then - if [ "$BreakHelpNumVerify" = "" ]; then - for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do - [[ "${BreakHelpNumArray[t]}" = "$k" ]] && continue 2 - done - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - else - echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - fi - else - tmp_for_other="$tmp_for_other@\${$config_name_my$k}" - fi - done - echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" - done - ;; - esac - fi - else - echo "#$cur_time 未运行过 $task_name.js 脚本,未产生日志" - fi -} - -## 汇总输出 -export_all_codes() { - gen_pt_pin_array - [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 当前 code.sh 的线程数量:$ps_num" - [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 预设的 JD_COOKIE 数量:`echo $JD_COOKIE | grep -o 'pt_key' | wc -l`" - [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 预设的 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#$cur_time 检测到您将多个 COOKIES 填写到单个环境变量值,请注意将各 COOKIES 采用 & 分隔,否则将无法完整输出互助码及互助规则!" - echo -e "\n#$cur_time 从日志提取互助码,编号和配置文件中Cookie编号完全对应,如果为空就是所有日志中都没有。\n\n#$cur_time 即使某个MyXxx变量未赋值,也可以将其变量名填在ForOtherXxx中,jtask脚本会自动过滤空值。\n" - if [ $DiyHelpType = "1" ]; then - echo -e "#$cur_time 您已启用指定活动采用指定互助模板功能!" - else - echo -n "#$cur_time 您选择的互助码模板为:" - case $HelpType in - 0) - echo "所有账号助力码全部一致。" - ;; - 1) - echo "所有账号机会均等助力。" - ;; - 2) - echo "本套脚本内账号间随机顺序助力。" - ;; - *) - echo "按账号编号优先。" - ;; - esac - fi - [[ $BreakHelpType = 1 ]] && echo -e "\n#$cur_time 您已启用屏蔽模式,账号 $BreakHelpNum 将不被助力!" - if [ "$ps_num" -gt 7 ]; then - echo -e "\n#$cur_time 检测到 code.sh 的线程过多 ,请稍后再试!" - exit - elif [ -z $repo ]; then - echo -e "\n#$cur_time 未检测到兼容的活动脚本日志,无法读取互助码,退出!" - exit - else - echo -e "\n#$cur_time 默认调用 $repo 的脚本日志,格式化导出互助码,生成互助规则!" - dump_user_info - 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_rules(){ -local envs=$(eval echo "\$JD_COOKIE") -local array=($(echo $envs | sed 's/&/ /g')) -local user_sum=${#array[*]} -local config_name=$1 -local config_name_my=My$config_name -local config_name_for_other=ForOther$config_name -local i j k - -#更新配置文件中的互助码 -if [ -z "$(cat $file_task_before | grep "^$config_name_my\d")" ]; then - echo -e "\n${config_name_my}1=''\n" >> $file_task_before -fi -for ((i=1; i<=100; i++)); do - if [[ $i -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name_my$i=.*'$")" ]]; then - new_code="$(cat $log_path | grep "^$config_name_my$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" - old_code="$(cat $file_task_before | grep "^$config_name_my$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" - if [ -z "$(grep "^$config_name_my$i" $file_task_before)" ]; then - sed -i "/^$config_name_my$[$i-1]='.*'/ s/$/\n$config_name_my$i=\'\'/" $file_task_before - fi - if [ "$new_code" != "$old_code" ]; then -# if [ $1 = "BookShop" ]; then -# if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] && [[ "$new_code" != "" ]]; then -# sed -i "s/^$config_name_my$i='$old_code'$/$config_name_my$i='$new_code'/" $file_task_before -# fi -# else - if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] || [[ "$new_code" = "" ]]; then - sed -i "s/^$config_name_my$i='$old_code'$/$config_name_my$i='$new_code'/" $file_task_before - fi -# fi - fi - elif [[ $i -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name_my$i")" ]]; then - sed -i "/^$config_name_my$i/d" $file_task_before - fi -done - -#更新配置文件中的互助规则 -if [ -z "$(cat $file_task_before | grep "^$config_name_for_other\d")" ]; then - echo -e "${config_name_for_other}1=\"\"\n" >> $file_task_before -fi -for ((j=1; j<=100; j++)); do - if [[ $j -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name_for_other$j=.*\"$")" ]]; then - new_rule="$(cat $log_path | grep "^$config_name_for_other$j=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")" - old_rule="$(cat $file_task_before | grep "^$config_name_for_other$j=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")" - if [ -z "$(grep "^$config_name_for_other$j" $file_task_before)" ]; then - sed -i "/^$config_name_for_other$[$j-1]=".*"/ s/$/\n$config_name_for_other$j=\"\"/" $file_task_before - fi - if [ "$new_rule" != "$old_rule" ]; then - sed -i "s/^$config_name_for_other$j=\"$old_rule\"$/$config_name_for_other$j=\"$new_rule\"/" $file_task_before - fi - elif [[ $j -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name_for_other$j")" ]]; then - sed -i "/^$config_name_for_other$j/d" $file_task_before - fi -done -} - -help_codes_only(){ -local envs=$(eval echo "\$JD_COOKIE") -local array=($(echo $envs | sed 's/&/ /g')) -local user_sum=${#array[*]} -local config_name=$1 -local config_name_my=My$config_name -local config_name_for_other=ForOther$config_name -local i j k - -#更新配置文件中的互助码 -if [ -z "$(cat $file_task_before | grep "^$config_name\d")" ]; then - echo -e "\n${config_name}1=''\n" >> $file_task_before -fi -for ((k=1; k<=100; k++)); do - if [[ $k -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name$k=.*'$")" ]]; then - new_code="$(cat $log_path | grep "^$config_name$k=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" - old_code="$(cat $file_task_before | grep "^$config_name$k=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" - if [ -z "$(grep "^$config_name$k" $file_task_before)" ]; then - sed -i "/^$config_name$[$k-1]='.*'/ s/$/\n$config_name$k=\'\'/" $file_task_before - fi - if [ "$new_code" != "$old_code" ]; then - if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] || [[ "$new_code" = "" ]]; then - sed -i "s/^$config_name$k='$old_code'$/$config_name$k='$new_code'/" $file_task_before - fi - fi - elif [[ $k -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name$k")" ]]; then - sed -i "/^$config_name$k/d" $file_task_before - fi -done -} - -export_codes_sub_only(){ -if [ "$(cat $dir_scripts/"$repo"_jd_cfd.js | grep "// console.log(\`token")" != "" ]; then - echo -e "\n# 正在修改 "$repo"_jd_cfd.js ,待完全运行 "$repo"_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 "#$cur_time 从日志中未找到任何互助码" - fi -fi -} - -#更新互助码和互助规则 -update_help(){ -#latest_log=$(ls -r $dir_code | head -1) -latest_log=$log_path -case $UpdateType in - 1) - if [ "$ps_num" -le 7 ] && [ -f $log_path ] && [ -f $file_task_before ]; then - backup_del - echo -e "\n#$cur_time 开始更新配置文件的互助码和互助规则" | tee -a $latest_log - for i in ${name_config[@]}; do - help_codes_rules $i - done - for i in ${name_config_only[@]}; do - help_codes_only $i - done - sed -i "4c ## 上次导入时间:$(date +%Y年%m月%d日\ %X)" /ql/config/task_before.sh - echo -e "\n#$cur_time 配置文件的互助码和互助规则已完成更新" | tee -a $latest_log - elif [ ! -f $log_path ]; then - echo -e "\n#$cur_time 日志文件不存在,请检查后重试!" | tee -a $latest_log - elif [ ! -f $file_task_before ]; then - echo -e "\n#$cur_time 配置文件不存在,请检查后重试!" | tee -a $latest_log - fi - ;; - *) - echo -e "\n#$cur_time 您已设置不更新配置文件的互助码和互助规则,跳过更新!" | tee -a $latest_log - ;; -esac -} - -dump_user_info(){ -echo -e "\n## 账号用户名及 COOKIES 整理如下:" -local envs=$(eval echo "\$JD_COOKIE") -local array=($(echo $envs | sed 's/&/ /g')) - for ((m = 0; m < ${#pt_pin[*]}; m++)); do - j=$((m + 1)) - echo -e "## 用户名 $j:${pt_pin[m]}\n## Cookie$j=\"${array[m]}\"" - done -} - -backup_del(){ -[[ $BACKUP = "1" ]] && mkdir -p $dir_config/bak/ && cp $file_task_before $dir_config/bak/task_before_$log_time.sh -[[ $CLEANBAK = "1" ]] && find $dir_config/bak/ -type f -mtime +$CLEANBAK_DAYS | xargs rm -rvf -} - - -## 执行并写入日志 -today="$(date +%Y年%m月%d日)" -cur_time="【$(date +%X)】" -log_time=$(date "+%Y-%m-%d-%H-%M-%S") -log_path="$dir_code/$log_time.log" -make_dir "$dir_code" -ps_num="$(ps | grep code.sh | grep -v grep | wc -l)" -[[ ! -z "$(ps -ef|grep -w 'code.sh'|grep -v grep)" ]] && ps -ef|grep -w 'code.sh'|grep -v grep|awk '{print $3}'|xargs kill -9 -export_all_codes | perl -pe "{s|京东种豆|种豆|; s|crazyJoy任务|疯狂的JOY|}" | tee $log_path -sleep 5 -update_help - -## 修改curtinlv京东超市兑换脚本的参数 -sed -i "21c cookies='$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*\(pt_key=\S\+;\)\S*\(pt_pin=\S\+;\)\S*/\1\2/g;" | perl -pe "s| |&|g")'" /ql/scripts/curtinlv_JD-Script_jd_blueCoin.py - -## 修改curtinlv入会领豆配置文件的参数 -sed -i "4c JD_COOKIE = '$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*\(pt_key=\S\+;\)\S*\(pt_pin=\S\+;\)\S*/\1\2/g;" | perl -pe "s| |&|g")'" /ql/repo/curtinlv_JD-Script/OpenCard/OpenCardConfig.ini diff --git a/Scripts/sh/Helpcode2.8/config_sample.sh b/Scripts/sh/Helpcode2.8/config_sample.sh deleted file mode 100644 index 1f71686..0000000 --- a/Scripts/sh/Helpcode2.8/config_sample.sh +++ /dev/null @@ -1,410 +0,0 @@ -## Version: v2.8.0 -## Date: 2021-06-20 -## Mod: Build20210714-002 -## 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 -## 下方填写素材库图片id(corpid,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脚本时账户编号将发生变化 -## 举例1:TempBlockCookie="2" 临时屏蔽掉Cookie2 -## 举例2:TempBlockCookie="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 -case $1 in - *jd_fruit*) - TempBlockCookie="" - ;; - *jd_dreamFactory* | *jd_jdfactory*) - TempBlockCookie="" - ;; - *jd_jdzz* | *jd_joy*) - TempBlockCookie="" - ;; -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="false" -## 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="" -## 22、京东UA。点点券脚本运行环境变量 -export JD_USER_AGENT="jdltapp;iPhone;3.1.0;14.4;3b6e79334551fc6f31952d338b996789d157c4e8" - -# 阿道夫部分环境变量 -## 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 部分环境变量 -## 宠汪汪二代目 -### 默认80,10、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" -## 14、零食街自动兑换变量 -### 自行取消注释和注释 -##export ljsdh="jdAward1" ##兑换5豆 -##export ljsdh="jdAward2" ##兑换10豆 -export ljsdh="jdAward3" ##兑换100豆 -##export ljsdh="jdAward4" ##兑换牛奶 - -# curtinlv 环境变量 -## 1、赚京豆 -### 助力账号,填写pt_pin或用户名的值,如 zlzh = ['aaaa','xxxx','yyyy'] ,支持ENV -export zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 -## 2、全民抢京豆 -export qjd_zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 -## 3、签到领现金助力 -export cash_zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 -## 4、入会开卡 -### 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:使用作者远程仓库更新的id,False:使用本地shopid.txt的id -export isRemoteSid="true" -## 5、东东超市商品兑换 -### 您的ck格式:pt_key=xxx;pt_pin=xxx; (多账号&分隔)。无效变量,已集成改写代码至最新 code.sh -### export cookies='' -### 【填写您要兑换的商品】 -export coinToBeans="京豆包" -### 轮次 -export startMaxNum="30" -### 多线程并发,相当于每秒点击兑换次数...适当调整,手机会发烫 -export dd_thread="30" -### 开始抢兑时间 -export starttime="23:59:59.00000000" -### 结束时间 -export endtime="00:00:30.00000000" - -# Wenmoux 部分环境变量 -## 1、QQ星系牧场自动兑换20豆 -export Cowexchange="true" -## 欧洲狂欢杯兑换兑换豆子,填38豆子,填39e卡 -export Cupexid="39" -## 10秒阅读 -## 填写自己CK -export Readck="" -## 填写自己设备UA -export Read10UA="" -## 填true推送消息,默认不推送 -export jrpush="" - -# smiek2221 环境变量 -## 1、燃动夏季—入会 -export summer_movement_joinjoinjoinhui="false" ##是否入会 true 入会,false 不入会 -## 2、燃动夏季—百元守卫战SH -export summer_movement_ShHelpFlag="1" ##0 不开启也不助力 1 开启并助力 2 开启但不助力 默认开启并助力 -## 3、燃动夏季-新增只做邀请助力功能 -export summer_movement_HelpHelpHelpFlag="true" ##是否只执行邀请助力 true 是 false 不是 默认 false -### 可以设置13点执行一下脚本 -if [ $(date "+%H") -eq 13 ]; then - export summer_movement_HelpHelpHelpFlag="true" -fi - -# cdle 环境变量 -## 1、愤怒的锦鲤 -### 助力账号,填写pt_pin或用户名的值。多个 pt_pin 值用 @ 连接 -export kois="$(echo $JD_COOKIE | sed "s/&/\n/g; s/\S*;pt_pin=\(\S\+\);\S*/\1/g; s/\n/@/g;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}')" ## 支持中文用户名 -## 2、全民运动会守卫红包 -### 助力码,需手动抓包 -export olympicgames_inviteId="" -## 3、签到领现金兑换 -### 填写 pt_pin@金额,pt_pin为用户名,可以在 COOKIES 中提取;金额为 2 或 10,例如 LiLei@2 或 HanMeimei@10。多值用 & 连接,例如 LiLei@2&HanMeimei@10 -### export exchangeAccounts="$(echo $JD_COOKIE | sed "s/&/\n/g; s/\S*;pt_pin=\(\S\+\);\S*/\1@10/g; s/\n/\&/g;")" ##兑10元现金,比较难兑 -export exchangeAccounts="$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\1@2/g; s/ /&/g;")" ##兑2元现金 - -## 其他命令: -## 1、一键改写京东兑蓝币脚本的cookies;需手动运行 (已集成至最新的 code.sh) -## sed -i "s/cookies=''/cookies='$(. /ql/shell/share.sh && . /ql/config/env.sh && echo $JD_COOKIE)'/g" /ql/scripts/*_jd_blueCoin.py diff --git a/Scripts/sh/Helpcode2.8/task_before.sh b/Scripts/sh/Helpcode2.8/task_before.sh deleted file mode 100644 index c119191..0000000 --- a/Scripts/sh/Helpcode2.8/task_before.sh +++ /dev/null @@ -1,183 +0,0 @@ -#!/usr/bin/env bash - -# Build 20210714-003 - -## 东东农场: -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 ## 1、东东农场互助码 - PETSHARECODES ## 2、东东萌宠互助码 - PLANT_BEAN_SHARECODES ## 3、种豆得豆互助码 - DREAM_FACTORY_SHARE_CODES ## 4、京喜工厂互助码 - DDFACTORY_SHARECODES ## 5、东东工厂互助码 - JDJOY_SHARECODES ## 6、疯狂的JOY互助码 - JDZZ_SHARECODES ## 7、京东赚赚互助码 - JXNC_SHARECODES ## 8、京喜农场助力码 - BOOKSHOP_SHARECODES ## 9、口袋书店互助码 - JD_CASH_SHARECODES ## 10、签到领现金互助码 - JDSGMH_SHARECODES ## 11、闪购盲盒互助码 - JDCFD_SHARECODES ## 12、京喜财富岛互助码 - JDHEALTH_SHARECODES ## 13、东东健康社区互助码 - CITY_SHARECODES ## 14、城城领现金互助码 - JD818_SHARECODES ## 15、京东手机狂欢城互助码 - JXNCTOKENS ## 16、京喜Token(京喜财富岛提现用) -) -var_name=( - ForOtherFruit ## 1、东东农场互助规则 - ForOtherPet ## 2、东东萌宠互助规则 - ForOtherBean ## 3、种豆得豆互助规则 - ForOtherDreamFactory ## 4、京喜工厂互助规则 - ForOtherJdFactory ## 5、东东工厂互助规则 - ForOtherJoy ## 6、疯狂的JOY互助规则 - ForOtherJdzz ## 7、京东赚赚互助规则 - ForOtherJxnc ## 8、京喜农场助力码 - ForOtherBookShop ## 9、口袋书店互助规则 - ForOtherCash ## 10、签到领现金互助规则 - ForOtherSgmh ## 11、闪购盲盒互助规则 - ForOtherCfd ## 12、京喜财富岛互助规则 - ForOtherHealth ## 13、东东健康社区互助规则 - ForOtherCarni ## 14、城城领现金互助规则 - ForOtherCity ## 15、京东手机狂欢城互助规则 - TokenJxnc ## 16、京喜Token(京喜财富岛提现用) -) - -combine_sub() { - . /ql/config/env.sh - 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 -# for num in ${TempBlockCookie}; do -# if [[ $i -eq $num ]]; then -# continue 2 -# fi -# done - 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 -} - -## 临时屏蔽某账号运行活动脚本 -TempBlock_JD_COOKIE(){ - . /ql/config/env.sh - local envs=$(eval echo "\$JD_COOKIE") - local array=($(echo $envs | sed 's/&/ /g')) - for num in ${TempBlockCookie}; do - unset array[$(($num-1))] - done - jdCookie=$(echo ${array[*]} | sed 's/\ /\&/g') - [[ ! -z $jdCookie ]] && export JD_COOKIE="$jdCookie" -} - -TempBlock_JD_COOKIE - -#if [[ $(ls $dir_code) ]]; then -# latest_log=$(ls -r $dir_code | head -1) -# . $dir_code/$latest_log - combine_all -#fi From ae40b504876d61ca0a835c30e3132ebe971a8e0d Mon Sep 17 00:00:00 2001 From: Leon <62660101+Oreomeow@users.noreply.github.com> Date: Sat, 17 Jul 2021 13:45:17 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=A7=AC7.17?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Scripts/sh/HelpCode2.8/code.sh | 595 +++++++++++++++++++++++++++++++++ 1 file changed, 595 insertions(+) create mode 100644 Scripts/sh/HelpCode2.8/code.sh diff --git a/Scripts/sh/HelpCode2.8/code.sh b/Scripts/sh/HelpCode2.8/code.sh new file mode 100644 index 0000000..f7bd5bc --- /dev/null +++ b/Scripts/sh/HelpCode2.8/code.sh @@ -0,0 +1,595 @@ +#!/usr/bin/env bash + +#Build 20210717-001 + +## 导入通用变量与函数 +dir_shell=/ql/shell +. $dir_shell/share.sh + +## 预设的仓库及默认调用仓库设置 +## 将"repo=$repo1"改成repo=$repo2"或其他,以默认调用其他仓库脚本日志 +## 也可自行搜索本脚本内的"name_js=("和"name_js_only",将"repo"改成"repo2"或其他,用以自由组合调用仓库的脚本日志 +repo1='panghu999_jd_scripts' #预设的 panghu999 仓库 +repo2='JDHelloWorld_jd_scripts' #预设的 JDHelloWorld 仓库 +repo3='he1pu_JDHelp' #预设的 he1pu 仓库 +repo4='shufflewzc_faker2' #预设的 shufflewzc 仓库 +repo5='Wenmoux_scripts_wen_chinnkarahoi' #预设的 Wenmoux 仓库,用于读取口袋书店互助码。需提前拉取温某人的仓库或口袋书店脚本并完整运行。 +repo6='Aaron-lv_sync_jd_scripts' +repo=$repo1 #默认调用 panghu999 仓库脚本日志 + +## 调试模式开关,默认是0,表示关闭;设置为1,表示开启 +DEBUG="1" + +## 备份配置文件开关,默认是1,表示开启;设置为0,表示关闭。备份路径 /ql/config/bak/ +BACKUP="1" +## 是否删除指定天数以前的备份文件开关,默认是1,表示开启;设置为0,表示关闭。删除路径 /ql/config/bak/ +CLEANBAK="1" +## 定义删除指定天数以前的备份文件 +CLEANBAK_DAYS="2" + +## 定义 jcode 脚本导出的互助码模板样式(选填) +## 不填 使用“按编号顺序互助模板”,Cookie编号在前的优先助力 +## 填 0 使用“全部一致互助模板”,所有账户要助力的码全部一致 +## 填 1 使用“均等机会互助模板”,所有账户获得助力次数一致 +## 填 2 使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 +HelpType="1" + +## 定义指定活动采用指定的互助模板。 +## 设定值为 DiyHelpType="1" 表示启用功能;不填或填其他内容表示不开启功能。 +## 如果只是想要控制某个活动以执行某种互助规则,可以参考下面 case 这个命令的例子来控制 +## 活动名称参见 name_config 定义内容;具体可在本脚本中搜索 name_config=( 获悉 +DiyHelpType="0" +diy_help_rules(){ + case $1 in + Fruit) + tmp_helptype="0" # 东东农场使用“全部一致互助模板”,所有账户要助力的码全部一致 + ;; + DreamFactory | JdFactory) + tmp_helptype="1" # 京喜工厂和东东工厂使用“均等机会互助模板”,所有账户获得助力次数一致 + ;; + Jdzz | Joy) + tmp_helptype="2" # 京东赚赚和疯狂的Joy使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 + ;; + *) + tmp_helptype=$HelpType # 其他活动仍按默认互助模板生产互助规则。 + ;; + esac +} + +## 定义屏蔽模式。被屏蔽的账号将不被助力,被屏蔽的账号仍然可以助力其他账号。 +## 设定值为 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_fruit + "$repo"_jd_pet + "$repo"_jd_plantBean + "$repo"_jd_dreamFactory + "$repo"_jd_jdfactory + "$repo"_jd_crazy_joy + "$repo"_jd_jdzz + "$repo"_jd_jxnc + "$repo5"_jd_bookshop + "$repo"_jd_cash + "$repo"_jd_sgmh + "$repo6"_jd_cfd + "$repo"_jd_health + "$repo"_jd_carnivalcity + "$repo"_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=( + "$repo6"_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:去掉后缀的脚本名称,$2:config.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 tmp_helptype=$HelpType + local BreakHelpInterval=$(echo $BreakHelpNum | perl -pe "{s|~|-|; s|_|-|}" | sed 's/\(\d\+\)-\(\d\+\)/{\1..\2}/g') + local BreakHelpNumArray=($(eval echo $BreakHelpInterval)) + local BreakHelpNumVerify=$(echo $BreakHelpNum | sed 's/ //g' | perl -pe "{s|-||; s|~||; s|_||}" | sed 's/^\d\+$//g') + local i j k m n t pt_pin_in_log code tmp_grep tmp_my_code tmp_for_other user_num tmp_helptype HelpTemp 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 + [[ $DiyHelpType = "1" ]] && diy_help_rules $2 + case $tmp_helptype in + 0) ## 全部一致 + HelpTemp="全部一致" + echo -e "\n## 采用\"$HelpTemp\"互助模板:" + tmp_for_other="" + for ((m = 0; m < ${#pt_pin[*]}; m++)); do + j=$((m + 1)) + if [[ $BreakHelpType = "1" ]]; then + if [ "$BreakHelpNumVerify" = "" ]; then + for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do + [[ "${BreakHelpNumArray[t]}" = "$j" ]] && continue 2 + done + tmp_for_other="$tmp_for_other@\${$config_name_my$j}" + else + echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" + tmp_for_other="$tmp_for_other@\${$config_name_my$j}" + fi + else + tmp_for_other="$tmp_for_other@\${$config_name_my$j}" + fi + 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=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" + done + ;; + + 1) ## 均等助力 + HelpTemp="均等助力" + echo -e "\n## 采用\"$HelpTemp\"互助模板:" + 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 + if [[ $BreakHelpType = "1" ]]; then + if [ "$BreakHelpNumVerify" = "" ]; then + for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do + [[ "${BreakHelpNumArray[t]}" = "$k" ]] && continue 2 + done + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + else + echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + fi + else + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + fi + done + echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" + done + ;; + + 2) ## 本套脚本内账号间随机顺序助力 + HelpTemp="随机顺序" + echo -e "\n## 采用\"$HelpTemp\"互助模板:" + 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 + if [[ $BreakHelpType = "1" ]]; then + if [ "$BreakHelpNumVerify" = "" ]; then + for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do + [[ "${BreakHelpNumArray[t]}" = "$n" ]] && continue 2 + done + tmp_for_other="$tmp_for_other@\${$config_name_my$n}" + else + echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" + tmp_for_other="$tmp_for_other@\${$config_name_my$n}" + fi + else + tmp_for_other="$tmp_for_other@\${$config_name_my$n}" + fi + done + echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" + done + ;; + + *) ## 按编号优先 + HelpTemp="按编号优先" + echo -e "\n## 采用\"$HelpTemp\"互助模板" + 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)) + if [[ $BreakHelpType = "1" ]]; then + if [ "$BreakHelpNumVerify" = "" ]; then + for ((t = 0; t < ${#BreakHelpNumArray[*]}; t++)); do + [[ "${BreakHelpNumArray[t]}" = "$k" ]] && continue 2 + done + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + else + echo -e "\n#$cur_time 变量值填写不规范,请检查后重试!" + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + fi + else + tmp_for_other="$tmp_for_other@\${$config_name_my$k}" + fi + done + echo "$config_name_for_other$j=\"$tmp_for_other\"" | perl -pe "s|($config_name_for_other\d+=\")@|\1|" + done + ;; + esac + fi + else + echo "#$cur_time 未运行过 $task_name.js 脚本,未产生日志" + fi +} + +## 汇总输出 +export_all_codes() { + gen_pt_pin_array + [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 当前 code.sh 的线程数量:$ps_num" + [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 预设的 JD_COOKIE 数量:`echo $JD_COOKIE | grep -o 'pt_key' | wc -l`" + [[ $DEBUG = "1" ]] && echo -e "\n#$cur_time 预设的 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#$cur_time 检测到您将多个 COOKIES 填写到单个环境变量值,请注意将各 COOKIES 采用 & 分隔,否则将无法完整输出互助码及互助规则!" + echo -e "\n#$cur_time 从日志提取互助码,编号和配置文件中Cookie编号完全对应,如果为空就是所有日志中都没有。\n\n#$cur_time 即使某个MyXxx变量未赋值,也可以将其变量名填在ForOtherXxx中,jtask脚本会自动过滤空值。\n" + if [[ $DiyHelpType = "1" ]]; then + echo -e "#$cur_time 您已启用指定活动采用指定互助模板功能!" + else + echo -n "#$cur_time 您选择的互助码模板为:" + case $HelpType in + 0) + echo "所有账号助力码全部一致。" + ;; + 1) + echo "所有账号机会均等助力。" + ;; + 2) + echo "本套脚本内账号间随机顺序助力。" + ;; + *) + echo "按账号编号优先。" + ;; + esac + fi + [[ $BreakHelpType = "1" ]] && echo -e "\n#$cur_time 您已启用屏蔽模式,账号 $BreakHelpNum 将不被助力!" + if [ "$ps_num" -gt 7 ]; then + echo -e "\n#$cur_time 检测到 code.sh 的线程过多 ,请稍后再试!" + exit + elif [ -z $repo ]; then + echo -e "\n#$cur_time 未检测到兼容的活动脚本日志,无法读取互助码,退出!" + exit + else + echo -e "\n#$cur_time 默认调用 $repo 的脚本日志,格式化导出互助码,生成互助规则!" + dump_user_info + 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_rules(){ +local envs=$(eval echo "\$JD_COOKIE") +local array=($(echo $envs | sed 's/&/ /g')) +local user_sum=${#array[*]} +local config_name=$1 +local config_name_my=My$config_name +local config_name_for_other=ForOther$config_name +local i j k + +#更新配置文件中的互助码 +if [ -z "$(cat $file_task_before | grep "^$config_name_my\d")" ]; then + echo -e "\n${config_name_my}1=''\n" >> $file_task_before +fi +for ((i=1; i<=100; i++)); do + if [[ $i -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name_my$i=.*'$")" ]]; then + new_code="$(cat $log_path | grep "^$config_name_my$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" + old_code="$(cat $file_task_before | grep "^$config_name_my$i=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" + if [ -z "$(grep "^$config_name_my$i" $file_task_before)" ]; then + sed -i "/^$config_name_my$[$i-1]='.*'/ s/$/\n$config_name_my$i=\'\'/" $file_task_before + fi + if [ "$new_code" != "$old_code" ]; then +# if [ $1 = "BookShop" ]; then +# if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] && [[ "$new_code" != "" ]]; then +# sed -i "s/^$config_name_my$i='$old_code'$/$config_name_my$i='$new_code'/" $file_task_before +# fi +# else + if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] || [[ "$new_code" = "" ]]; then + sed -i "s/^$config_name_my$i='$old_code'$/$config_name_my$i='$new_code'/" $file_task_before + fi +# fi + fi + elif [[ $i -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name_my$i")" ]]; then + sed -i "/^$config_name_my$i/d" $file_task_before + fi +done + +#更新配置文件中的互助规则 +if [ -z "$(cat $file_task_before | grep "^$config_name_for_other\d")" ]; then + echo -e "${config_name_for_other}1=\"\"\n" >> $file_task_before +fi +for ((j=1; j<=100; j++)); do + if [[ $j -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name_for_other$j=.*\"$")" ]]; then + new_rule="$(cat $log_path | grep "^$config_name_for_other$j=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")" + old_rule="$(cat $file_task_before | grep "^$config_name_for_other$j=.*\"$" | sed "s/.*\"\(.*\)\".*/\1/")" + if [ -z "$(grep "^$config_name_for_other$j" $file_task_before)" ]; then + sed -i "/^$config_name_for_other$[$j-1]=".*"/ s/$/\n$config_name_for_other$j=\"\"/" $file_task_before + fi + if [ "$new_rule" != "$old_rule" ]; then + sed -i "s/^$config_name_for_other$j=\"$old_rule\"$/$config_name_for_other$j=\"$new_rule\"/" $file_task_before + fi + elif [[ $j -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name_for_other$j")" ]]; then + sed -i "/^$config_name_for_other$j/d" $file_task_before + fi +done +} + +help_codes_only(){ +local envs=$(eval echo "\$JD_COOKIE") +local array=($(echo $envs | sed 's/&/ /g')) +local user_sum=${#array[*]} +local config_name=$1 +local config_name_my=My$config_name +local config_name_for_other=ForOther$config_name +local i j k + +#更新配置文件中的互助码 +if [ -z "$(cat $file_task_before | grep "^$config_name\d")" ]; then + echo -e "\n${config_name}1=''\n" >> $file_task_before +fi +for ((k=1; k<=100; k++)); do + if [[ $k -le $user_sum ]] && [[ ! -z "$(cat $log_path | grep "^$config_name$k=.*'$")" ]]; then + new_code="$(cat $log_path | grep "^$config_name$k=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" + old_code="$(cat $file_task_before | grep "^$config_name$k=.*'$" | sed "s/.*'\(.*\)'.*/\1/")" + if [ -z "$(grep "^$config_name$k" $file_task_before)" ]; then + sed -i "/^$config_name$[$k-1]='.*'/ s/$/\n$config_name$k=\'\'/" $file_task_before + fi + if [ "$new_code" != "$old_code" ]; then + if [[ "$new_code" != "undefined" ]] && [[ "$new_code" != "{}" ]] || [[ "$new_code" = "" ]]; then + sed -i "s/^$config_name$k='$old_code'$/$config_name$k='$new_code'/" $file_task_before + fi + fi + elif [[ $k -gt $user_sum ]] && [[ ! -z "$(cat $file_task_before | grep "^$config_name$k")" ]]; then + sed -i "/^$config_name$k/d" $file_task_before + fi +done +} + +export_codes_sub_only(){ +if [ "$(cat $dir_scripts/"$repo"_jd_cfd.js | grep "// console.log(\`token")" != "" ]; then + echo -e "\n# 正在修改 "$repo"_jd_cfd.js ,待完全运行 "$repo"_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 "#$cur_time 从日志中未找到任何互助码" + fi +fi +} + +#更新互助码和互助规则 +update_help(){ +#latest_log=$(ls -r $dir_code | head -1) +latest_log=$log_path +case $UpdateType in + 1) + if [ "$ps_num" -le 7 ] && [ -f $log_path ] && [ -f $file_task_before ]; then + backup_del + echo -e "\n#$cur_time 开始更新配置文件的互助码和互助规则" | tee -a $latest_log + for i in ${name_config[@]}; do + help_codes_rules $i + done + for i in ${name_config_only[@]}; do + help_codes_only $i + done + sed -i "4c ## 上次导入时间:$(date +%Y年%m月%d日\ %X)" /ql/config/task_before.sh + echo -e "\n#$cur_time 配置文件的互助码和互助规则已完成更新" | tee -a $latest_log + elif [ ! -f $log_path ]; then + echo -e "\n#$cur_time 日志文件不存在,请检查后重试!" | tee -a $latest_log + elif [ ! -f $file_task_before ]; then + echo -e "\n#$cur_time 配置文件不存在,请检查后重试!" | tee -a $latest_log + fi + ;; + *) + echo -e "\n#$cur_time 您已设置不更新配置文件的互助码和互助规则,跳过更新!" | tee -a $latest_log + ;; +esac +} + +dump_user_info(){ +echo -e "\n## 账号用户名及 COOKIES 整理如下:" +local envs=$(eval echo "\$JD_COOKIE") +local array=($(echo $envs | sed 's/&/ /g')) + for ((m = 0; m < ${#pt_pin[*]}; m++)); do + j=$((m + 1)) + echo -e "## 用户名 $j:${pt_pin[m]}\n## Cookie$j=\"${array[m]}\"" + done +} + +backup_del(){ +[[ $BACKUP = "1" ]] && mkdir -p $dir_config/bak/ && cp $file_task_before $dir_config/bak/task_before_$log_time.sh +[[ $CLEANBAK = "1" ]] && find $dir_config/bak/ -type f -mtime +$CLEANBAK_DAYS | xargs rm -rvf +} + + +## 执行并写入日志 +today="$(date +%Y年%m月%d日)" +cur_time="【$(date +%X)】" +log_time=$(date "+%Y-%m-%d-%H-%M-%S") +log_path="$dir_code/$log_time.log" +make_dir "$dir_code" +ps_num="$(ps | grep code.sh | grep -v grep | wc -l)" +#[[ ! -z "$(ps -ef|grep -w 'code.sh'|grep -v grep)" ]] && ps -ef|grep -w 'code.sh'|grep -v grep|awk '{print $1}'|xargs kill -9 +export_all_codes | perl -pe "{s|京东种豆|种豆|; s|crazyJoy任务|疯狂的JOY|}" | tee $log_path +sleep 5 +update_help + +## 修改curtinlv入会领豆配置文件的参数 +sed -i "4c JD_COOKIE = '$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*\(pt_key=\S\+;\)\S*\(pt_pin=\S\+;\)\S*/\1\2/g;" | perl -pe "s| |&|g")'" /ql/repo/curtinlv_JD-Script/OpenCard/OpenCardConfig.ini From 0de2be7590de6b08722804635c7c3a2e6d749ccc Mon Sep 17 00:00:00 2001 From: Leon <62660101+Oreomeow@users.noreply.github.com> Date: Sat, 17 Jul 2021 13:47:46 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=A7=AC7.17?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Scripts/sh/HelpCode2.8/Updatelog.txt | 97 ++++++ Scripts/sh/HelpCode2.8/Usage.txt | 97 ++++++ Scripts/sh/HelpCode2.8/config_sample.sh | 425 ++++++++++++++++++++++++ Scripts/sh/HelpCode2.8/task_before.sh | 194 +++++++++++ 4 files changed, 813 insertions(+) create mode 100644 Scripts/sh/HelpCode2.8/Updatelog.txt create mode 100644 Scripts/sh/HelpCode2.8/Usage.txt create mode 100644 Scripts/sh/HelpCode2.8/config_sample.sh create mode 100644 Scripts/sh/HelpCode2.8/task_before.sh diff --git a/Scripts/sh/HelpCode2.8/Updatelog.txt b/Scripts/sh/HelpCode2.8/Updatelog.txt new file mode 100644 index 0000000..7c68f31 --- /dev/null +++ b/Scripts/sh/HelpCode2.8/Updatelog.txt @@ -0,0 +1,97 @@ +更新日志: + + +2021.7.16.001 +1、完善几处代码语法,避免报错; +2、新财富岛强制调用 Aaron-lv 仓库脚本日志。可以自定义。 + +2021.7.12.003 +1、curtinlv 京东超市兑换脚本的参数及入会领豆配置文件的参数修改代码的优化。 + +2021.7.12.002 +1、支持通过 Wenmoux 温某人的修复版口袋书店活动脚本日志,格式化导出互助码。须提前拉取 Wenmoux 温某人的仓库或脚本,并完整运行; +2、取消 code.sh 对 task_before.sh 口袋书店互助码的改写限制。 + +2021.7.12.001 +1、经过认真考虑,规则作了调整:除了口袋书店以外,code.sh还是会将互助码或互助规则的空值更新到 task_before.sh 。避免屏蔽模式和临时屏蔽账号运行脚本情况下,还是会向活动脚本提交互助码; +2、task_before.sh更新:完善临时屏蔽某个 COOKIES 参加某个活动功能:禁止被屏蔽的账号助力其他人。 + +2021.7.11.003 +1、修正某些情况下屏蔽模式的范围扩大的 BUG (感谢 @tianliu 测试反馈); +2、增加每次运行前强行终止一切 code.sh 进程。 + +2021.7.11.002 +1、集成修改curtinlv京东超市兑换脚本 cookies 环境变量的参数。原因:该环境变量在 config.sh 中设置无效。 + +2021.7.11.001 +1、改进更新互助码和互助规则的代码。当临时屏蔽账号时,所有账号靠前排位,自动剔除 task_before.sh 中多余的互助码和互助规则。 + +2021.7.10.001 +1、改进屏蔽模式,加入 pt_pin 用户名校验,以应对临时帐号禁用时,屏蔽模式序号错误的问题。此外,日志可以直出启用屏蔽模式的互助规则; +2、修复全部一致助力模板的错误; +3、格式化导出用户名改进为格式化导出用户名和 COOKIES ,以用于 V4 面板或其他用途; +4、改进自定义调用仓库脚本日志用法。详见脚本或使用方法, +5、增加删除指定天数前的 task_before 备份文件的功能。 +注:由于当前青龙面板存在脚本跑不完的BUG,所以建议定时任务的命令统一改成 bash /ql/config/code.sh &,避免互助码输出不完整。 + +2021.7.7.002 +1、task_before.sh的上次导入提示加上注释符#。 + +2021.7.7.001 +1、增加指定活动使用指定互助模板功能。 +2、增加每个活动采用哪种互助模板的日志输出。 +3、增加改写 task_before.sh:显示上次完成更新互助码和互助规则的时间。 + +2021.7.4.001 +1、增加导出账号用户名的功能(非账号昵称,支持中文显示)。 + +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、初版发布 \ No newline at end of file diff --git a/Scripts/sh/HelpCode2.8/Usage.txt b/Scripts/sh/HelpCode2.8/Usage.txt new file mode 100644 index 0000000..bb2caa4 --- /dev/null +++ b/Scripts/sh/HelpCode2.8/Usage.txt @@ -0,0 +1,97 @@ +使用方法: + +〇、code.sh 是基于青龙 2.2.0 的 code.sh 修改而来。仅支持青龙 2.8.0 及以上。主要功能包括:①批量格式化导出互助码和互助规则,并自动填写、更新 task_before.sh 配置文件中的互助码和互助规则;②支持互助模板修改;③支持指定活动采用指定互助模板;④支持临时屏蔽某账号被助力(这些账号仍可助力其他账号);⑤支持 COOKIES 批量格式化导出;⑥支持自动备份旧的 task_before.sh 及删除过期的备份(可自定义过期时长)。 +task_before.sh 是本人基于青龙原版修改而来,支持包括东东农场、京喜工厂、京喜Token等16个活动的互助码、互助规则的格式化导出和提交。此外,配合置顶 config.sh 文件,可以实现临时禁止某些 COOKIE 参加所有活动或某些活动功能。 + +主要原理: +a) code.sh 工作主要分两个阶段: +1、第一阶段:从各个活动脚本日志中搜索互助码,跟 COOKIES 的 pt_pin (用户名)校验后整理输出。根据你选择的互助规则模板,生成对应的互助规则。最新整理的互助码和互助规则输出到 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 个空值。那么 task_before.sh 的互助码和互助规则也会相应更新(除了口袋书店)。 + +一、添加面板互助码自动更新监控任务。可自动读取最新的格式化导出互助码日志,自动更新 task_before.sh 中的互助码。 +1、将 code.sh 和配套的 task_before.sh 脚本拷贝到容器内路径/ql/config/。如果此前已将改路径映射至主机,则拷贝到主机对应路径即可; +注: code.sh 必须配套提供的 task_before.sh 模板使用。如自行使用其他文件以致出现互助码输出不正常,提交活动失败等问题,请自我检讨。 + +2、格式化更新互助码的定时任务规则: +名称:格式化更新互助码 +命令:bash /ql/config/code.sh & +定时规则:10 * * * * +注:①命令千万不要用 task /ql/config/code.sh。否则会出现报错,且可能导致互助码和互助规则写入不完整。②由于目前青龙面板存在"手动运行命令卡在途中无法运行完整"的 BUG,实测命令末尾加上" &"(不含引号),暂时可以规避该 BUG。 + +3、需要读取活动脚本日志才能格式化整理各个活动的互助码及互助规则。对应的仓库拉取命令详见置顶"截至XXXX年XX月XX日XX:XX还在维护的仓库" +## 预设的仓库及默认调用仓库设置 +## 将"repo=$repo1"改成repo=$repo2"或其他,以默认调用其他仓库脚本日志 +## 也可自行搜索本脚本内的"name_js=("和"name_js_only",将"repo"改成"repo2"或其他,用以自由组合调用仓库的脚本日志 +repo1='panghu999_jd_scripts' #预设的 panghu999 仓库 +repo2='JDHelloWorld_jd_scripts' #预设的 JDHelloWorld 仓库 +repo3='he1pu_JDHelp' #预设的 he1pu 仓库 +repo4='shufflewzc_faker2' #预设的 shufflewzc 仓库 +repo=$repo1 #默认调用 panghu999 仓库脚本日志 + +4、导出京喜农场 Token 的方法: +a) 前提:必须搭配最新的 task_before.sh 模板,否则京喜财富岛提现无法读取到 token。 +b) 步骤:运行一次 code.sh,再根据日志提示的优先仓库,运行一次京喜财富岛活动脚本。再运行一次 code.sh 。 +注:b) 步骤 code.sh 定时任务会配合京喜财富岛活动自动处理。有两点需要格外注意:①大多数京喜财富岛的定时任务间隔比较长,活动自身的运行时间也很长。所以自动处理,可能需要等到凌晨前后才会把 token 收集齐。②由于青龙 config.sh 默认的定时任务超时时间为 1h ,如果帐号比较多,1h 不够京喜财富岛跑完,那么就会导致 token 始终收集不齐。我个人把超时时间设置成了 3h。即:CommandTimeoutTime="3h" +c)问题: +1) task_before.sh 的 Token 是空值? +答:必须先运行 code.sh ,将"京喜财富岛的脚本格式化输出京喜token"功能解锁,再完整运行一次优先仓库的京喜财富岛活动脚本后,最后再运行 code.sh 。否则 Token 可能会无法写入或写入不完整。 +2) task_before.sh Token 写入正常,但是京喜财富岛提现还是读取不到 Token ? +答:①确保 task_before.sh 是最新版,具体可以比对你的文件和置顶模板的第三行 Build 号。 + ②京喜财富岛的任务不能设置 conc JD_COOKIE 并发多线程,否则会导致 Token 读取异常。 + +二、其他自定义的参数配置: +1、自定义互助规则模板定义 +## 定义 jcode 脚本导出的互助码模板样式(选填) +## 不填 使用“按编号顺序互助模板”,Cookie编号在前的优先助力 +## 填 0 使用“全部一致互助模板”,所有账户要助力的码全部一致 +## 填 1 使用“均等机会互助模板”,所有账户获得助力次数一致 +## 填 2 使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 +HelpType="1" + +## 定义指定活动采用指定的互助模板。 +## 设定值为 DiyHelpType="1" 表示启用功能;不填或填其他内容表示不开启功能。 +## 如果只是想要控制某个活动以执行某种互助规则,可以参考下面 case 这个命令的例子来控制 +## 活动名称参见 name_config 定义内容;具体可在本脚本中搜索 name_config=( 获悉 +DiyHelpType="0" +diy_help_rules(){ + case $1 in + Fruit) + tmp_helptype="0" # 东东农场使用“全部一致互助模板”,所有账户要助力的码全部一致 + ;; + DreamFactory | JdFactory) + tmp_helptype="1" # 京喜工厂和东东工厂使用“均等机会互助模板”,所有账户获得助力次数一致 + ;; + Jdzz | Joy) + tmp_helptype="2" # 京东赚赚和疯狂的Joy使用“随机顺序互助模板”,本套脚本内账号间随机顺序助力,每次生成的顺序都不一致。 + ;; + *) + tmp_helptype=$HelpType # 其他活动仍按默认互助模板生产互助规则。 + ;; + esac +} + +2、自定义是否修改配置文件 +## 定义是否自动更新配置文件中的互助码和互助规则,默认为1,表示更新;留空或其他数值表示不更新。 +UpdateType="1" + +3、自动备份 task_before.sh 和删除指定天数以前的备份文件。 +## 备份配置文件开关,默认是1,表示开启;设置为0,表示关闭。备份路径 /ql/config/bak/ +BACKUP="1" +## 是否删除指定天数以前的备份文件开关,默认是1,表示开启;设置为0,表示关闭。删除路径 /ql/config/bak/ +CLEANBAK="1" +## 定义删除指定天数以前的备份文件 +CLEANBAK_DAYS="2" + +4、支持自定义指定某账号不参加某活动(配套置顶 config_sample.sh 和 task_before.sh 模板使用); + +5、自定义屏蔽指定账户被助力,但不影响这些帐号助力其他帐号。详见 code.sh 内容; + +6、如果反复提醒检测到 code.sh正在运行,说明 code.sh 的运行线程过多,如果强行运行,可能会导致互助码和规则写入异常。常规做法是等一会再试。如果非要强行运行,方法如下: +①修改config.sh +如果日志输出线程数是 9 + +②再在 code.sh 搜索 +"$ps_num" -le 7 和 "$ps_num" -gt 7 +把 7 改成 9,然后 code.sh 就可以运行了,但不建议这么做,因为这是一个防呆设计。 \ No newline at end of file diff --git a/Scripts/sh/HelpCode2.8/config_sample.sh b/Scripts/sh/HelpCode2.8/config_sample.sh new file mode 100644 index 0000000..20632a2 --- /dev/null +++ b/Scripts/sh/HelpCode2.8/config_sample.sh @@ -0,0 +1,425 @@ +## Version: v2.8.0 +## Date: 2021-06-20 +## Mod: Build20210717-001 +## 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 +## 下方填写素材库图片id(corpid,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脚本时账户编号将发生变化 +## 举例1:TempBlockCookie="2" 临时屏蔽掉Cookie2 +## 举例2:TempBlockCookie="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 +case $1 in + *jd_fruit*) + TempBlockCookie="" + ;; + *jd_dreamFactory* | *jd_jdfactory*) + TempBlockCookie="" + ;; + *jd_jdzz* | *jd_joy*) + TempBlockCookie="" + ;; +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="false" +## 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="" +## 22、京东UA。点点券脚本运行环境变量 +export JD_USER_AGENT="jdltapp;iPhone;3.1.0;14.4;3b6e79334551fc6f31952d338b996789d157c4e8" +## 22、京东试用jd_try相关环境变量 +##控制每次获取商品数量,默认12 +export JD_TRY_PAGE_SIZE="" +##商品分类,以 @ 隔开,示例:家用电器@手机数码@电脑办公@家居家装 +export JD_TRY_CIDS_KEYS="" +##试用类型,以 @ 隔开,示例:免费试用@闪电试 +export JD_TRY_TYPE_KEYS="" +##过滤试用商品关键字,以 @ 隔开(默认内置了很多关键字,建议使用默认) +export JD_TRY_GOOD_FILTERS="" +##试用商品最低价格 +export JD_TRY_MIN_PRICE="" +##试用商品最多提供数量(过滤垃圾商品) +export JD_TRY_MAX_SUPPLY_COUNT="" + +# 阿道夫部分环境变量 +## 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 部分环境变量 +## 宠汪汪二代目 +### 默认80,10、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" +## 14、零食街自动兑换变量 +### 自行取消注释和注释 +##export ljsdh="jdAward1" ##兑换5豆 +##export ljsdh="jdAward2" ##兑换10豆 +export ljsdh="jdAward3" ##兑换100豆 +##export ljsdh="jdAward4" ##兑换牛奶 + +# curtinlv 环境变量 +## 1、赚京豆 +### 助力账号,填写pt_pin或用户名的值,如 zlzh = ['aaaa','xxxx','yyyy'] ,支持ENV +export zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 +## 2、全民抢京豆 +export qjd_zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 +## 3、签到领现金助力 +export cash_zlzh=$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\'\1\',/g; s/^/[/; s/$\|,$/]/;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}') ## 支持中文用户名 +## 4、入会开卡 +### 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:使用作者远程仓库更新的id,False:使用本地shopid.txt的id +export isRemoteSid="true" +## 5、东东超市商品兑换 +#【填写您要兑换的商品】ENV设置: export coinToBeans='京豆包' +export coinToBeans='京豆包' +#多账号并发,默认关闭 ENV设置: export blueCoin_Cc=True +export blueCoin_Cc='True' +### 【填写您要兑换的商品】 +export coinToBeans="京豆包" +### 轮次 +export startMaxNum="30" +### 多线程并发,相当于每秒点击兑换次数...适当调整,手机会发烫 +export dd_thread="30" +### 开始抢兑时间 +export starttime="23:59:59.00000000" +### 结束时间 +export endtime="00:00:30.00000000" + +# Wenmoux 部分环境变量 +## 1、QQ星系牧场自动兑换20豆 +export Cowexchange="true" +## 欧洲狂欢杯兑换兑换豆子,填38豆子,填39e卡 +export Cupexid="39" +## 10秒阅读 +## 填写自己CK +export Readck="" +## 填写自己设备UA +export Read10UA="" +## 填true推送消息,默认不推送 +export jrpush="" + +# smiek2221 环境变量 +## 1、燃动夏季—入会 +export summer_movement_joinjoinjoinhui="false" ##是否入会 true 入会,false 不入会 +## 2、燃动夏季—百元守卫战SH +export summer_movement_ShHelpFlag="1" ##0 不开启也不助力 1 开启并助力 2 开启但不助力 默认开启并助力 +## 3、燃动夏季-新增只做邀请助力功能 +export summer_movement_HelpHelpHelpFlag="true" ##是否只执行邀请助力 true 是 false 不是 默认 false +### 可以设置13点执行一下脚本 +if [ $(date "+%H") -eq 13 ]; then + export summer_movement_HelpHelpHelpFlag="true" +fi + +# cdle 环境变量 +## 1、愤怒的锦鲤 +### 助力账号,填写pt_pin或用户名的值。多个 pt_pin 值用 @ 连接 +export kois="$(echo $JD_COOKIE | sed "s/&/\n/g; s/\S*;pt_pin=\(\S\+\);\S*/\1/g; s/\n/@/g;" | awk 'BEGIN{for(i=0;i<10;i++)hex[i]=i;hex["A"]=hex["a"]=10;hex["B"]=hex["b"]=11;hex["C"]=hex["c"]=12;hex["D"]=hex["d"]=13;hex["E"]=hex["e"]=14;hex["F"]=hex["f"]=15;}{gsub(/\+/," ");i=$0;while(match(i,/%../)){;if(RSTART>1);printf"%s",substr(i,1,RSTART-1);printf"%c",hex[substr(i,RSTART+1,1)]*16+hex[substr(i,RSTART+2,1)];i=substr(i,RSTART+RLENGTH);}print i;}')" ## 支持中文用户名 +## 2、全民运动会守卫红包 +### 助力码,需手动抓包 +export olympicgames_inviteId="" +## 3、签到领现金兑换 +### 填写 pt_pin@金额,pt_pin为用户名,可以在 COOKIES 中提取;金额为 2 或 10,例如 LiLei@2 或 HanMeimei@10。多值用 & 连接,例如 LiLei@2&HanMeimei@10 +### export exchangeAccounts="$(echo $JD_COOKIE | sed "s/&/\n/g; s/\S*;pt_pin=\(\S\+\);\S*/\1@10/g; s/\n/\&/g;")" ##兑10元现金,比较难兑 +export exchangeAccounts="$(echo $JD_COOKIE | sed "s/&/ /g; s/\S*pt_pin=\(\S\+\);\S*/\1@2/g; s/ /&/g;")" ##兑2元现金 + +## 其他命令: +## 1、一键改写京东兑蓝币脚本的cookies;需手动运行 (已集成至最新的 code.sh) +## sed -i "s/cookies=''/cookies='$(. /ql/shell/share.sh && . /ql/config/env.sh && echo $JD_COOKIE)'/g" /ql/scripts/*_jd_blueCoin.py diff --git a/Scripts/sh/HelpCode2.8/task_before.sh b/Scripts/sh/HelpCode2.8/task_before.sh new file mode 100644 index 0000000..7b41990 --- /dev/null +++ b/Scripts/sh/HelpCode2.8/task_before.sh @@ -0,0 +1,194 @@ +#!/usr/bin/env bash + +# Build 20210715-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 ## 1、东东农场互助码 + PETSHARECODES ## 2、东东萌宠互助码 + PLANT_BEAN_SHARECODES ## 3、种豆得豆互助码 + DREAM_FACTORY_SHARE_CODES ## 4、京喜工厂互助码 + DDFACTORY_SHARECODES ## 5、东东工厂互助码 + JDJOY_SHARECODES ## 6、疯狂的JOY互助码 + JDZZ_SHARECODES ## 7、京东赚赚互助码 + JXNC_SHARECODES ## 8、京喜农场助力码 + BOOKSHOP_SHARECODES ## 9、口袋书店互助码 + JD_CASH_SHARECODES ## 10、签到领现金互助码 + JDSGMH_SHARECODES ## 11、闪购盲盒互助码 + JDCFD_SHARECODES ## 12、京喜财富岛互助码 + JDHEALTH_SHARECODES ## 13、东东健康社区互助码 + CITY_SHARECODES ## 14、城城领现金互助码 + JD818_SHARECODES ## 15、京东手机狂欢城互助码 + JXNCTOKENS ## 16、京喜Token(京喜财富岛提现用) +) +var_name=( + ForOtherFruit ## 1、东东农场互助规则 + ForOtherPet ## 2、东东萌宠互助规则 + ForOtherBean ## 3、种豆得豆互助规则 + ForOtherDreamFactory ## 4、京喜工厂互助规则 + ForOtherJdFactory ## 5、东东工厂互助规则 + ForOtherJoy ## 6、疯狂的JOY互助规则 + ForOtherJdzz ## 7、京东赚赚互助规则 + ForOtherJxnc ## 8、京喜农场助力码 + ForOtherBookShop ## 9、口袋书店互助规则 + ForOtherCash ## 10、签到领现金互助规则 + ForOtherSgmh ## 11、闪购盲盒互助规则 + ForOtherCfd ## 12、京喜财富岛互助规则 + ForOtherHealth ## 13、东东健康社区互助规则 + ForOtherCarni ## 14、城城领现金互助规则 + ForOtherCity ## 15、京东手机狂欢城互助规则 + TokenJxnc ## 16、京喜Token(京喜财富岛提现用) +) + +combine_sub() { + source /ql/config/env.sh + local what_combine=$1 + local combined_all="" + local tmp1 tmp2 + local TempBlockCookieArray=($(echo $TempBlockCookie)) + local envs=$(eval echo "\$JD_COOKIE") + local array=($(echo $envs | sed 's/&/ /g')) + local user_sum=${#array[*]} + local a b c i j sum + for ((j=1; j <= $user_sum; j++)); do + local tmp1=$what_combine$j + local tmp2=${!tmp1} + [[ ${tmp2} ]] && sum=$j || break + done + for ((i = 1; i <= $user_sum; i++)); do + a=$temp_user_sum + b=${#TempBlockCookieArray[*]} + c=$sum + if [[ $a -ne $c ]]; then + for num in ${TempBlockCookie}; do + [[ $i -eq $num ]] && continue 2 + done + fi + 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 +} + +## 临时屏蔽某账号运行活动脚本 +TempBlock_JD_COOKIE(){ + source /ql/config/env.sh + local envs=$(eval echo "\$JD_COOKIE") + local array=($(echo $envs | sed 's/&/ /g')) + for num in ${TempBlockCookie}; do + unset array[$(($num-1))] + done + jdCookie=$(echo ${array[*]} | sed 's/\ /\&/g') + [[ ! -z $jdCookie ]] && export JD_COOKIE="$jdCookie" + temp_user_sum=${#array[*]} +} + +TempBlock_JD_COOKIE + +#if [[ $(ls $dir_code) ]]; then +# latest_log=$(ls -r $dir_code | head -1) +# . $dir_code/$latest_log + combine_all +#fi