From 8bf43d8be94ce95daf9fe72008ff884ca12e4645 Mon Sep 17 00:00:00 2001 From: Lkeme <19500576+lkeme@users.noreply.github.com> Date: Sat, 11 Jan 2020 17:35:10 +0800 Subject: [PATCH] [update] AnchorRaffle --- CHANGELOG.md | 11 +++++++++++ DOC.md | 4 ++-- README.md | 2 +- composer.lock | 8 ++++---- conf/user.conf.example | 3 ++- src/plugin/AnchorRaffle.php | 30 ++++++++++++++++++++++++++++++ 6 files changed, 50 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0979a58..93fa775 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,17 @@ # Release Notes # 本项目Log +## v0.1.0.200111 alpha (2020-01-11) + +### Added +- 天选时刻奖品过滤 + +### Changed +- + +### Fixed +- + ## v0.1.0.200103 alpha (2020-01-03) ### Added diff --git a/DOC.md b/DOC.md index 0d1c774..6b642d8 100644 --- a/DOC.md +++ b/DOC.md @@ -2,7 +2,7 @@

- +

@@ -36,7 +36,7 @@ B 站直播实用脚本 |GiftRaffle |20.01.03 |活动礼物 | |PkRaffle |20.01.03 |大乱斗 | |GuardRaffle |20.01.03 |舰长总督 | -|AnchorRaffle |20.01.03 |天选时刻 | +|AnchorRaffle |20.01.11 |天选时刻 | |AwardRecord |19.12.27 |获奖通知 | |Statistics |19.12.27 |数据统计 | diff --git a/README.md b/README.md index 3575047..0a1c3bc 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Group: [55308141](https://jq.qq.com/?_wv=1027&k=5AIDaJg) ## 公告 -Currently for Personal Edition **0.1.0.200103 alpha** +Currently for Personal Edition **0.1.0.200111 alpha** ## 文档 diff --git a/composer.lock b/composer.lock index fccbe83..3aa0494 100644 --- a/composer.lock +++ b/composer.lock @@ -250,12 +250,12 @@ "source": { "type": "git", "url": "https://github.com/lkeme/CurlFuture.git", - "reference": "f588d890eee745d8ecd3ee1135ac6de899381e15" + "reference": "ea91acf250d2519cbd187d91fa6d01e9cfa9c6c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lkeme/CurlFuture/zipball/f588d890eee745d8ecd3ee1135ac6de899381e15", - "reference": "f588d890eee745d8ecd3ee1135ac6de899381e15", + "url": "https://api.github.com/repos/lkeme/CurlFuture/zipball/ea91acf250d2519cbd187d91fa6d01e9cfa9c6c5", + "reference": "ea91acf250d2519cbd187d91fa6d01e9cfa9c6c5", "shasum": "", "mirrors": [ { @@ -281,7 +281,7 @@ } ], "description": "Parallel CURL Requests with PHP --Fork", - "time": "2020-01-04T13:16:47+00:00" + "time": "2020-01-04T14:29:53+00:00" }, { "name": "monolog/monolog", diff --git a/conf/user.conf.example b/conf/user.conf.example index 9ae8832..7311894 100644 --- a/conf/user.conf.example +++ b/conf/user.conf.example @@ -27,9 +27,10 @@ USE_GUARD=true # 大乱斗 USE_PK=true -# 天选时刻|抽取类型(0: 无限制; 1: 关注主播; 2: 粉丝勋章; 3大航海; 4用户等级;5主站等级)|逗号分隔 +# 天选时刻|抽取类型(0: 无限制; 1: 关注主播; 2: 粉丝勋章; 3大航海; 4用户等级;5主站等级)|过滤关键词|逗号分隔 USE_ANCHOR=false ANCHOR_TYPE=0,1 +ANCHOR_FILTER_WORDS= # 实物抽奖 USE_MO=true diff --git a/src/plugin/AnchorRaffle.php b/src/plugin/AnchorRaffle.php index 4a070be..8d26d93 100644 --- a/src/plugin/AnchorRaffle.php +++ b/src/plugin/AnchorRaffle.php @@ -28,6 +28,32 @@ class AnchorRaffle extends BaseRaffle private static $filter_type = []; + /** + * @use 过滤奖品 + * @param string $prize_name + * @return bool + */ + protected static function filterPrizeWords(string $prize_name): bool + { + $default_words = [ + '拉黑', '黑名单', '脸皮厚', '没有奖品', '无奖', '脸皮厚', 'ceshi', '测试', '测试', '测试', '脚本', + '抽奖号', '星段位', '星段位', '圣晶石', '圣晶石', '水晶', '水晶', '万兴神剪手', '万兴神剪手', + '自付邮费', '自付邮费', "test", "Test", "TEST", "加密", "QQ", "测试", "測試", "VX", "vx", + "ce", "shi", "这是一个", "lalall", "第一波", "第二波", "第三波", "测试用", "抽奖标题", "策是", + "房间抽奖", "CESHI", "ceshi", "奖品A", "奖品B", "奖品C", "硬币", "无奖品", "白名单", "我是抽奖", + "0.1", "五毛二", "一分", "一毛", "0.52", "0.66", "0.01", "0.77", "0.16", "照片", "穷", "0.5", + "0.88", "双排" + ]; + $custom_words = empty(getenv('ANCHOR_TYPE')) ? [] : explode(',', getenv('ANCHOR_TYPE')); + $total_words = array_merge($default_words, $custom_words); + foreach ($total_words as $word) { + if (strpos($prize_name, $word) !== false) { + return true; + } + } + return false; + } + /** * @use 解析数据 * @param int $room_id @@ -53,6 +79,10 @@ class AnchorRaffle extends BaseRaffle if (!in_array((string)$de_raw['require_type'], self::$filter_type)) { return false; } + // 过滤奖品关键词 + if (self::filterPrizeWords($de_raw['award_name'])) { + return false; + } // 去重 if (self::toRepeatLid($de_raw['id'])) { return false;