diff --git a/README.md b/README.md index 8b3ff26..0f070a3 100644 --- a/README.md +++ b/README.md @@ -48,10 +48,11 @@ ql repo https://github.com/hex-ci/smzdm_script.git "" "env.js|bot.js|sendNotify. ### 青龙环境变量 -* SMZDM_COOKIE: 抓包抓到的 Cookie 内容,需要所有 Cookie 内容,多用户可以用 `&` 分隔,或者使用多个同名环境变量。 -* SMZDM_SK: 这个值是可选值,是从安卓 App 的 `https://user-api.smzdm.com/checkin` 请求参数中抓包抓到的,如果抓到这个值可以填写(强烈建议填写),如果没抓到可以忽略,多用户可以用 `&` 分隔,或者使用多个同名环境变量,顺序要保持与 `SMZDM_COOKIE` 多用户顺序一致。 -* SMZDM_COMMENT: 如果要完成评论文章的任务请设置这个环境变量,环境变量的内容是评论的文案,文案要大于 10 个汉字,建议用比较个性化的文案,脚本发布评论后会删除这条评论,但是为防止删除失败的情况,请尽量用好一点的文案,防止被判定为恶意灌水。 -* SMZDM_CROWD_SILVER_5: 每日抽奖任务默认只进行免费抽奖,如要进行 5 碎银子的抽奖,请设置这个环境变量的值为 `yes`。 +* `SMZDM_COOKIE`: 抓包抓到的 Cookie 内容,需要所有 Cookie 内容,多用户可以用 `&` 分隔,或者使用多个同名环境变量。 +* `SMZDM_SK`: 这个值是可选值,是从安卓 App 的 `https://user-api.smzdm.com/checkin` 请求参数中抓包抓到的,如果抓到这个值可以填写(强烈建议填写),如果没抓到可以忽略,多用户可以用 `&` 分隔,或者使用多个同名环境变量,顺序要保持与 `SMZDM_COOKIE` 多用户顺序一致。 +* `SMZDM_COMMENT`: 如果要完成评论文章的任务请设置这个环境变量,环境变量的内容是评论的文案,文案要大于 10 个汉字,建议用比较个性化的文案,脚本发布评论后会删除这条评论,但是为防止删除失败的情况,请尽量用好一点的文案,防止被判定为恶意灌水。 +* `SMZDM_CROWD_SILVER_5`: 每日抽奖任务默认只进行免费抽奖,如要进行 5 碎银子的抽奖,请设置这个环境变量的值为 `yes`。 +* `SMZDM_CROWD_KEYWORD`: 抽奖关键词,执行非免费抽奖时,会优先选择包含此关键词的抽奖,如果未找到包含此关键词的抽奖,则会随机选择一个。 ## 交流群 diff --git a/smzdm_task.js b/smzdm_task.js index dba6ac6..8ba3373 100644 --- a/smzdm_task.js +++ b/smzdm_task.js @@ -881,7 +881,23 @@ class SmzdmTaskBot extends SmzdmBot { }; } - const crowd = this.getOneByRandom(crowds); + let crowd; + + if (price > 0 && process.env.SMZDM_CROWD_KEYWORD) { + crowd = crowds.find((item) => { + const match = item.match(/data-title="([^"]+)"/i); + + return (match && match[1].indexOf(process.env.SMZDM_CROWD_KEYWORD) >= 0); + }); + + if (!crowd) { + $.log('未找到符合关键词的抽奖,执行随机选取'); + crowd = this.getOneByRandom(crowds); + } + } + else { + crowd = this.getOneByRandom(crowds); + } const matchCrowd = crowd.match(/data-crowd_id="(\d+)"/i);