diff --git a/CHANGELOG.md b/CHANGELOG.md index b90bc19..6c1ecd2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,27 @@ # 本项目Log +## v0.9.5.210624 alpha (2021-06-24) + +### Added + +- + +### Changed + +- 更新动态转发 +- 更新基础环境参数 +- + +### Fixed + +- + +### Remarks + +- 注意配置文件有些许改动 +- + ## v0.9.4.210623 alpha (2021-06-23) ### Added diff --git a/README.md b/README.md index 43d2053..3221ea6 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@
-
+
@@ -37,40 +37,40 @@
| plugin | status | version | description |
|-----------------|--------|----------|---------------------------------------------|
-| CheckUpdate | true | 21.06.23 | 程序检查更新 |
-| Login | true | 21.06.23 | 账号登录、刷新、维持 |
-| Schedule | true | 21.06.23 | 控制插件运行周期 |
-| MainSite | true | 21.06.23 | 投币、观看、分享视频 (速升6级不是梦) |
-| DailyBag | true | 21.06.23 | 双端领取日常/周常礼包 |
-| ManGa | true | 21.06.23 | 漫画签到、分享 |
-| ActivityLottery | true | 21.06.23 | 主站活动九宫格抽奖 |
-| Competition | true | 21.06.23 | 游戏赛事竞猜 |
-| DoubleHeart | true | 21.06.23 | 双端心跳 (姥爷直播经验) |
-| DailyTask | true | 21.06.23 | 直播每日任务(签到、观看) |
-| Barrage | true | 21.06.23 | 保持活跃弹幕 |
-| Silver2Coin | true | 21.06.23 | 银瓜子兑换硬币 |
-| Judge | true | 21.06.23 | 风纪委员投票 |
-| GiftSend | true | 21.06.23 | 礼物赠送、维持每日勋章亲密度 |
-| GroupSignIn | true | 21.06.23 | 友爱社签到 |
-| GiftHeart | true | 21.06.23 | 日常心跳每日礼包礼物 |
-| SmallHeart | true | 21.06.23 | 直播挂机,每日24个小心心 |
-| MaterialObject | true | 21.06.23 | 直播金色宝箱实物抽奖 |
-| AloneTcpClient | true | 21.06.23 | 作者的独立直播监控(可支持本项目哦) |
-| ZoneTcpClient | true | 21.06.23 | 官方的分区直播监控 |
-| StormRaffle | true | 21.06.23 | 直播节奏风暴抽奖、亿元 |
-| GiftRaffle | true | 21.06.23 | 直播礼物抽奖 |
-| PkRaffle | true | 21.06.23 | 直播大乱斗抽奖 |
-| GuardRaffle | true | 21.06.23 | 直播大航海抽奖 |
-| AnchorRaffle | true | 21.06.23 | 直播天选时刻抽奖 |
-| GiftRaffle | true | 21.06.23 | 直播礼物抽奖 |
-| AwardRecord | true | 21.06.23 | 最新的中奖纪录通知 |
-| Forward | true | 21.06.23 | 主站动态抽奖转发 |
-| CapsuleLottery | true | 21.06.23 | 直播扭蛋活动抽奖 |
-| PolishTheMedal | true | 21.06.23 | 每日自动点亮灰色勋章 |
-| CapsuleLottery | true | 21.06.23 | 直播扭蛋活动抽奖 |
-| VipPrivilege | true | 21.06.23 | 每月领取年度大会员特权(B币券、会员购优惠券) |
-| BpConsumption | true | 21.06.23 | 每月消费使用年度大会员特权的B币券 |
-| Statistics | true | 21.06.23 | 全局抽奖结果统计 |
+| CheckUpdate | true | 21.06.24 | 程序检查更新 |
+| Login | true | 21.06.24 | 账号登录、刷新、维持 |
+| Schedule | true | 21.06.24 | 控制插件运行周期 |
+| MainSite | true | 21.06.24 | 投币、观看、分享视频 (速升6级不是梦) |
+| DailyBag | true | 21.06.24 | 双端领取日常/周常礼包 |
+| ManGa | true | 21.06.24 | 漫画签到、分享 |
+| ActivityLottery | true | 21.06.24 | 主站活动九宫格抽奖 |
+| Competition | true | 21.06.24 | 游戏赛事竞猜 |
+| DoubleHeart | true | 21.06.24 | 双端心跳 (姥爷直播经验) |
+| DailyTask | true | 21.06.24 | 直播每日任务(签到、观看) |
+| Barrage | true | 21.06.24 | 保持活跃弹幕 |
+| Silver2Coin | true | 21.06.24 | 银瓜子兑换硬币 |
+| Judge | true | 21.06.24 | 风纪委员投票 |
+| GiftSend | true | 21.06.24 | 礼物赠送、维持每日勋章亲密度 |
+| GroupSignIn | true | 21.06.24 | 友爱社签到 |
+| GiftHeart | true | 21.06.24 | 日常心跳每日礼包礼物 |
+| SmallHeart | true | 21.06.24 | 直播挂机,每日24个小心心 |
+| MaterialObject | true | 21.06.24 | 直播金色宝箱实物抽奖 |
+| AloneTcpClient | true | 21.06.24 | 作者的独立直播监控(可支持本项目哦) |
+| ZoneTcpClient | true | 21.06.24 | 官方的分区直播监控 |
+| StormRaffle | true | 21.06.24 | 直播节奏风暴抽奖、亿元 |
+| GiftRaffle | true | 21.06.24 | 直播礼物抽奖 |
+| PkRaffle | true | 21.06.24 | 直播大乱斗抽奖 |
+| GuardRaffle | true | 21.06.24 | 直播大航海抽奖 |
+| AnchorRaffle | true | 21.06.24 | 直播天选时刻抽奖 |
+| GiftRaffle | true | 21.06.24 | 直播礼物抽奖 |
+| AwardRecord | true | 21.06.24 | 最新的中奖纪录通知 |
+| Forward | true | 21.06.24 | 主站动态抽奖转发 |
+| CapsuleLottery | true | 21.06.24 | 直播扭蛋活动抽奖 |
+| PolishTheMedal | true | 21.06.24 | 每日自动点亮灰色勋章 |
+| CapsuleLottery | true | 21.06.24 | 直播扭蛋活动抽奖 |
+| VipPrivilege | true | 21.06.24 | 每月领取年度大会员特权(B币券、会员购优惠券) |
+| BpConsumption | true | 21.06.24 | 每月消费使用年度大会员特权的B币券 |
+| Statistics | true | 21.06.24 | 全局抽奖结果统计 |
| Silver | false | 21.03.27 | 直播银瓜子自动开启宝箱 |
## 交流反馈
diff --git a/conf/user.ini.example b/conf/user.ini.example
index da45bf1..2e355d1 100644
--- a/conf/user.ini.example
+++ b/conf/user.ini.example
@@ -136,12 +136,14 @@ bp2charge_uid = 6580464
# 消费B币充值金瓜子|5000金瓜子
bp2gold = false
-; 自动转发抽奖动态|自动取关未中奖动态|强制清除抽奖组关注|更改自动回复语言
+; 自动转发抽奖动态|自动取关未中奖动态|强制清除抽奖组关注|过滤低于多少粉丝|自定义回复|过滤词|逗号分割
[dynamic]
enable = false
clear_dynamic = false
clear_group_follow = false
-auto_reply_text = "从未中奖,从未放弃[doge]"
+min_fans_num = 1001
+auto_reply_text =
+filter_words =
; 游戏赛事竞猜预测|破产机|每日竞猜次数|每次竞猜硬币(1-10)|下注(1.压大,2.压小,3.随机)
[match_forecast]
diff --git a/data/filter_library.json b/data/filter_library.json
new file mode 100644
index 0000000..b74ef81
--- /dev/null
+++ b/data/filter_library.json
@@ -0,0 +1,753 @@
+{
+ "MaterialObject": {
+ "sensitive": [
+ "测试",
+ "加密",
+ "test",
+ "TEST",
+ "钓鱼",
+ "炸鱼",
+ "调试",
+ "123",
+ "1111",
+ "测试",
+ "測試",
+ "Test",
+ "测一测",
+ "ce-shi",
+ "test",
+ "T-E-S-T",
+ "lala",
+ "我是抽奖标题",
+ "压测",
+ "測一測",
+ "t-e-s-t"
+ ]
+ },
+ "Anchor": {
+ "default": [
+ "拉黑",
+ "黑名单",
+ "脸皮厚",
+ "没有奖品",
+ "无奖",
+ "脸皮厚",
+ "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",
+ "双排",
+ "1毛",
+ "1分",
+ "1角",
+ "P口罩",
+ "素颜",
+ "写真",
+ "图包",
+ "五毛",
+ "一角",
+ "冥币",
+ "自拍",
+ "日历",
+ "0.22",
+ "加速器",
+ "越南盾",
+ "毛",
+ "分",
+ "限",
+ "0.",
+ "角",
+ "〇点",
+ "①元",
+ "一起玩",
+ "不包邮",
+ "邮费",
+ "续期卡",
+ "儿时",
+ "闪宠",
+ "大师球",
+ "一元",
+ "两元",
+ "两块",
+ "赛车",
+ "代币",
+ "一块",
+ "一局",
+ "好友位",
+ "通话",
+ "首胜",
+ "代金券",
+ "辣条",
+ "补贴",
+ "抵用券",
+ "主播素颜照",
+ "武器箱棺材板",
+ "游戏道具",
+ "优惠券",
+ "日元",
+ "发音课",
+ "壹元",
+ "零点",
+ "舰长五折券",
+ "上车",
+ "没有钱",
+ "女装",
+ "肥宅快乐水",
+ "哥斯拉",
+ "公主连结",
+ "pokemmo",
+ "宝可>梦",
+ "明日方舟",
+ "雪碧",
+ "公主连接",
+ "专属头衔",
+ "FF14",
+ "韩元",
+ "空洞骑士",
+ "老婆饼",
+ "稀世时装",
+ "洛克衣服",
+ "帮过图",
+ "证件照",
+ "自抽号",
+ "晶耀之星",
+ "伊洛纳",
+ "〇.",
+ "②元",
+ "③元",
+ "0·",
+ "繁华美化",
+ "喵喵喵",
+ "闪伊布",
+ "①圆",
+ "o点",
+ "金达摩",
+ "嗷呜",
+ "游戏位",
+ "S-追光者",
+ "OWL",
+ "勾玉",
+ "跟yo宝游戏",
+ "三元",
+ "怡宝",
+ "蛋闪迷>你冰",
+ "哥伦比亚比索",
+ "油条",
+ "代金卷",
+ "小堂包",
+ "返现券",
+ "上舰",
+ "舰长",
+ "开舰",
+ "帅照",
+ "靓照",
+ "1元红包",
+ "红包3.3元",
+ "5.2元红包",
+ "2.33元红包",
+ "测试",
+ "钓鱼",
+ "炸鱼",
+ "黑屋",
+ "脚本",
+ "空气",
+ "大航海",
+ "上船",
+ "舰长",
+ "返现",
+ "抵用",
+ "代金",
+ "上车",
+ "上反船",
+ "照片",
+ "素颜",
+ "自拍",
+ "皂片",
+ "开舰",
+ "上舰",
+ "自画像",
+ "封面",
+ "取关",
+ "美照",
+ "随机照",
+ "女装照",
+ "日常照",
+ "好友",
+ "给主播",
+ "照骗",
+ "连麦",
+ "情书",
+ "一局",
+ "舰涨优惠卷",
+ "开黑",
+ "test",
+ "Test",
+ "金币",
+ "元宝",
+ "代打",
+ "上分",
+ "上段",
+ "台历",
+ "一毛",
+ "五毛",
+ "王者荣耀",
+ "玩游戏",
+ "encrypt",
+ "壁纸",
+ "相片",
+ "排位",
+ "语音",
+ "车位",
+ "网剧",
+ "一起玩",
+ "一次",
+ "专属头衔",
+ "手游",
+ "宠物",
+ "蒸汽",
+ "月饼",
+ "加速",
+ "挂件",
+ "渔夫",
+ "小黑屋",
+ "头像",
+ "许愿码",
+ "电池",
+ "赛车",
+ "保底",
+ "代币",
+ "越南盾",
+ "网点",
+ "机器",
+ "话梅",
+ "志愿",
+ "令牌",
+ "永久",
+ "第五人格",
+ "大蒜",
+ "唢呐",
+ "皇冠",
+ "徽章",
+ "铜牌",
+ "动物园",
+ "植物",
+ "钻石",
+ "宝石",
+ "尖叫",
+ "扭蛋机",
+ "点播",
+ "数字版月历",
+ "点歌一首",
+ "体验",
+ "点歌",
+ "三次取关",
+ "大航海",
+ "3块钱之前的巨款",
+ "礼金"
+ ]
+ },
+ "CapsuleLottery": {
+ "default": [
+ "谢谢参与",
+ "未中奖",
+ "辣条"
+ ]
+ },
+ "ActivityLottery": {
+ "default": [
+ "谢谢参与",
+ "未中奖",
+ "辣条"
+ ]
+ },
+ "Notice": {
+ "default": [
+ "谢谢参与",
+ "未中奖",
+ "辣条"
+ ]
+ },
+ "DynamicForward": {
+ "default": [
+ "一毛",
+ "结果",
+ "test",
+ "元宝",
+ "晒出",
+ "原石",
+ "代打",
+ "上分",
+ "测试",
+ "闹着玩",
+ "猫粮",
+ "钓鱼",
+ "加密",
+ "好友",
+ "视频下转发",
+ "签名照",
+ "全部答对",
+ "弹幕",
+ "评论下方投稿视频",
+ "征集",
+ "炸鱼",
+ "黑屋",
+ "照片",
+ "素颜",
+ "自拍",
+ "皂片",
+ "自画像",
+ "封面",
+ "取关",
+ "随机照",
+ "宝石",
+ "真情实感",
+ "给主播",
+ "照骗",
+ "连麦",
+ "加群",
+ "钓鱼",
+ "脚本",
+ "代金券",
+ "体验卡",
+ "门票",
+ "渲染券",
+ "机器",
+ "给视频",
+ "投票",
+ "取关",
+ "视频转发",
+ "视频分享",
+ "于视频内",
+ "视频评论",
+ "分享视频",
+ "转发视频",
+ "评论视频",
+ "进入直播间",
+ "平时售价",
+ "体验名额",
+ "评论区点赞前",
+ "上直播",
+ "参与直播抽奖",
+ "堆jqr",
+ "AI转",
+ "AI来",
+ "bot来",
+ "堆bot",
+ "jqr来",
+ "有jqr",
+ "有bot",
+ "jqr",
+ "bot"
+ ]
+ },
+ "Common": {
+ "default": [
+ "禁言",
+ "测试",
+ "vcf",
+ "体验中奖",
+ "中奖的感觉",
+ "赶脚",
+ "感脚",
+ "感jio",
+ "黑名单",
+ "拉黑",
+ "脸皮厚",
+ "没有奖品",
+ "无奖",
+ "ceshi",
+ "脚本",
+ "抽奖号",
+ "不要脸",
+ "至尊vip会员7天",
+ "高级会员7天",
+ "万兴神剪手",
+ "加密",
+ "test",
+ "TEST",
+ "钓鱼",
+ "炸鱼",
+ "调试"
+ ],
+ "sensitive": [
+ "编曲",
+ "作词",
+ "半价",
+ "打折",
+ "机器",
+ "禁言",
+ "测试",
+ "vcf",
+ "体验中奖",
+ "中奖的感觉",
+ "录歌",
+ "混音",
+ "一毛",
+ "0.1元",
+ "1角",
+ "0.5元",
+ "5毛",
+ "赶脚",
+ "感脚",
+ "曲风",
+ "专辑封面",
+ "封面",
+ "一元红包",
+ "感jio",
+ "名片赞",
+ "黑名单",
+ "拉黑",
+ "脸皮厚",
+ "没有奖品",
+ "无奖",
+ "脚本",
+ "抽奖号",
+ "不要脸",
+ "至尊vip会员7天",
+ "高级会员7天",
+ "加密",
+ "test",
+ "TEST",
+ "钓鱼",
+ "炸鱼",
+ "调试",
+ "歌曲定制",
+ "学习视频",
+ "修图视频",
+ "免费编曲",
+ "后期制作",
+ "编曲搬家",
+ "内容自定",
+ "音乐人一个",
+ "私人唱歌",
+ "感恩",
+ "作业",
+ "八字",
+ "算命",
+ "电台",
+ "情感视频",
+ "万兴神剪手",
+ "学习修图",
+ "写一首歌",
+ "ceshi",
+ "管饱",
+ "dong tai ga",
+ "电话唱歌",
+ "感谢转发",
+ "非独家使用权",
+ "前排沙发",
+ "琴谱",
+ "有就送",
+ "什么也不给",
+ "什么都没有",
+ "租赁",
+ "伴奏",
+ "定制beat",
+ "定制logo",
+ "惊喜软件",
+ "终于中奖",
+ "加群",
+ "第一批粉丝",
+ "祝大家",
+ "内部群",
+ "老粉",
+ "仅关注",
+ "仅我关注",
+ "打字粉丝ID",
+ "手打粉丝ID",
+ "人声采集",
+ "采样包",
+ "约稿",
+ "remix",
+ "明信片",
+ "感受中奖",
+ "快落",
+ "中奖的快乐",
+ "单曲",
+ "主题创作",
+ "猎妈",
+ "签名照",
+ "数字专辑",
+ "除夕夜",
+ "专辑",
+ "励志的话",
+ "亲笔签名",
+ "up",
+ "扫码进群",
+ "粉丝群",
+ "签名写真",
+ "纹身",
+ "祝你",
+ "红包雨",
+ "电子书",
+ "我",
+ "好友位",
+ "豪车优惠",
+ "观众老爷",
+ "的支持",
+ "星段位",
+ "圣晶石",
+ "水晶",
+ "QQ",
+ "自付邮费",
+ "Test",
+ "测试用",
+ "VX",
+ "vx",
+ "ce",
+ "shi",
+ "这是一个",
+ "lalall",
+ "第一波",
+ "第二波",
+ "策是",
+ "我是抽奖",
+ "照片",
+ "穷",
+ "0.5",
+ "一角",
+ "冥币",
+ "加速器",
+ "硬币",
+ "无奖品",
+ "白名单",
+ "奖品B",
+ "奖品C",
+ "五毛",
+ "第三波",
+ "0.1",
+ "五毛二",
+ "一分",
+ "0.52",
+ "0.66",
+ "0.01",
+ "0.77",
+ "0.16",
+ "0.88",
+ "双排",
+ "1毛",
+ "1分",
+ "P口罩",
+ "素颜",
+ "写真",
+ "图包",
+ "自拍",
+ "日历",
+ "0.22",
+ "房间抽奖",
+ "CESHI",
+ "奖品A",
+ "抽奖标题",
+ "測試",
+ "越南盾",
+ "啥都没有",
+ "哈哈哈",
+ "作曲",
+ "一首",
+ "手绘",
+ "学霸",
+ "buff",
+ "头像",
+ "剩的",
+ "中奖的",
+ "Ziyoda",
+ "Hilola",
+ "beden",
+ "新专",
+ "采样",
+ "音频",
+ "海报",
+ "关注",
+ "粉丝ID",
+ "优惠券",
+ "微博",
+ "互粉",
+ "真心话",
+ "回答",
+ "签名海报",
+ "不想要",
+ "抱抱",
+ "拥抱",
+ "WAV",
+ "邀请函",
+ "你猜猜",
+ "什么也没有",
+ "什么都",
+ "什么也",
+ "这不是抽奖",
+ "真欧",
+ "很欧",
+ "使用权",
+ "曲谱",
+ "啥也没有",
+ "木有",
+ "车载音乐",
+ "中奖滴",
+ "会员歌曲",
+ "一首歌",
+ "必唱",
+ "发文件",
+ "词作",
+ "购买资格",
+ "粉群",
+ "优惠",
+ "折扣",
+ "hoholive",
+ "surat",
+ "hisyat",
+ "免费观",
+ "免费演",
+ "免费门",
+ "谢谢参与",
+ "vx call u",
+ "新婚快乐",
+ "歌曲使用权",
+ "普通mp3使用权",
+ "破解版",
+ "土嗨",
+ "给你写",
+ "普通mp3",
+ "啥也不是",
+ "歌曲大礼包",
+ "歌手大礼包",
+ "无损wav",
+ "mp3使用权",
+ "wav使用权",
+ "曲谱"
+ ],
+ "uid_list": [
+ 28008897,
+ 28272016,
+ 140389827,
+ 24598781,
+ 28008860,
+ 28008880,
+ 28008743,
+ 28008948,
+ 28009292,
+ 319696958,
+ 90138218,
+ 28272000,
+ 28272047,
+ 28271978,
+ 8831288,
+ 175979009,
+ 3177443,
+ 486780865,
+ 403048135,
+ 474325039,
+ 455274996,
+ 477519424,
+ 292671666,
+ 448873224,
+ 22498938,
+ 1770865,
+ 444796995,
+ 306112375,
+ 320193786,
+ 606637517,
+ 305276429,
+ 204487541,
+ 404761800,
+ 186914127,
+ 99439379,
+ 457697569,
+ 270886929,
+ 477519424,
+ 401575,
+ 201296348,
+ 206804212,
+ 333584926,
+ 34679178,
+ 699923691,
+ 392689522,
+ 178700744,
+ 272882445,
+ 350977368,
+ 487168411,
+ 22682842,
+ 444949061,
+ 523974463,
+ 192231907,
+ 503908324,
+ 383189098,
+ 252909207,
+ 336467750,
+ 264875137,
+ 90721742,
+ 452299642,
+ 677739290,
+ 441522918,
+ 8766623,
+ 698327474,
+ 5439672,
+ 483247863,
+ 237055308,
+ 95404163,
+ 202052696,
+ 1309889741,
+ 627942060,
+ 455030741,
+ 406353670,
+ 18036870,
+ 470220612,
+ 432013403,
+ 1346052604,
+ 501312931
+ ]
+ }
+}
\ No newline at end of file
diff --git a/data/filter_words.json b/data/filter_words.json
deleted file mode 100644
index b5eb8ec..0000000
--- a/data/filter_words.json
+++ /dev/null
@@ -1,324 +0,0 @@
-{
- "MaterialObject": {
- "sensitive": [
- "测试",
- "加密",
- "test",
- "TEST",
- "钓鱼",
- "炸鱼",
- "调试",
- "123",
- "1111",
- "测试",
- "測試",
- "Test",
- "测一测",
- "ce-shi",
- "test",
- "T-E-S-T",
- "lala",
- "我是抽奖标题",
- "压测",
- "測一測",
- "t-e-s-t"
- ]
- },
- "Anchor": {
- "default": [
- "拉黑",
- "黑名单",
- "脸皮厚",
- "没有奖品",
- "无奖",
- "脸皮厚",
- "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",
- "双排",
- "1毛",
- "1分",
- "1角",
- "P口罩",
- "素颜",
- "写真",
- "图包",
- "五毛",
- "一角",
- "冥币",
- "自拍",
- "日历",
- "0.22",
- "加速器",
- "越南盾",
- "毛",
- "分",
- "限",
- "0.",
- "角",
- "〇点",
- "①元",
- "一起玩",
- "不包邮",
- "邮费",
- "续期卡",
- "儿时",
- "闪宠",
- "大师球",
- "一元",
- "两元",
- "两块",
- "赛车",
- "代币",
- "一块",
- "一局",
- "好友位",
- "通话",
- "首胜",
- "代金券",
- "辣条",
- "补贴",
- "抵用券",
- "主播素颜照",
- "武器箱棺材板",
- "游戏道具",
- "优惠券",
- "日元",
- "发音课",
- "壹元",
- "零点",
- "舰长五折券",
- "上车",
- "没有钱",
- "女装",
- "肥宅快乐水",
- "哥斯拉",
- "公主连结",
- "pokemmo",
- "宝可>梦",
- "明日方舟",
- "雪碧",
- "公主连接",
- "专属头衔",
- "FF14",
- "韩元",
- "空洞骑士",
- "老婆饼",
- "稀世时装",
- "洛克衣服",
- "帮过图",
- "证件照",
- "自抽号",
- "晶耀之星",
- "伊洛纳",
- "〇.",
- "②元",
- "③元",
- "0·",
- "繁华美化",
- "喵喵喵",
- "闪伊布",
- "①圆",
- "o点",
- "金达摩",
- "嗷呜",
- "游戏位",
- "S-追光者",
- "OWL",
- "勾玉",
- "跟yo宝游戏",
- "三元",
- "怡宝",
- "蛋闪迷>你冰",
- "哥伦比亚比索",
- "油条",
- "代金卷",
- "小堂包",
- "返现券",
- "上舰",
- "舰长",
- "开舰",
- "帅照",
- "靓照",
- "1元红包",
- "红包3.3元",
- "5.2元红包",
- "2.33元红包",
- "测试",
- "钓鱼",
- "炸鱼",
- "黑屋",
- "脚本",
- "空气",
- "大航海",
- "上船",
- "舰长",
- "返现",
- "抵用",
- "代金",
- "上车",
- "上反船",
- "照片",
- "素颜",
- "自拍",
- "皂片",
- "开舰",
- "上舰",
- "自画像",
- "封面",
- "取关",
- "美照",
- "随机照",
- "女装照",
- "日常照",
- "好友",
- "给主播",
- "照骗",
- "连麦",
- "情书",
- "一局",
- "舰涨优惠卷",
- "开黑",
- "test",
- "Test",
- "金币",
- "元宝",
- "代打",
- "上分",
- "上段",
- "台历",
- "一毛",
- "五毛",
- "王者荣耀",
- "玩游戏",
- "encrypt",
- "壁纸",
- "相片",
- "排位",
- "语音",
- "车位",
- "网剧",
- "一起玩",
- "一次",
- "专属头衔",
- "手游",
- "宠物",
- "蒸汽",
- "月饼",
- "加速",
- "挂件",
- "渔夫",
- "小黑屋",
- "头像",
- "许愿码",
- "电池",
- "赛车",
- "保底",
- "代币",
- "越南盾",
- "网点",
- "机器",
- "话梅",
- "志愿",
- "令牌",
- "永久",
- "第五人格",
- "大蒜",
- "唢呐",
- "皇冠",
- "徽章",
- "铜牌",
- "动物园",
- "植物",
- "钻石",
- "宝石",
- "尖叫",
- "扭蛋机",
- "点播",
- "数字版月历",
- "点歌一首",
- "体验",
- "点歌",
- "三次取关",
- "大航海",
- "3块钱之前的巨款",
- "礼金"
- ]
- },
- "CapsuleLottery": {
- "default": [
- "谢谢参与",
- "未中奖",
- "辣条"
- ]
- },
- "ActivityLottery": {
- "default": [
- "谢谢参与",
- "未中奖",
- "辣条"
- ]
- },
- "Notice": {
- "default": [
- "谢谢参与",
- "未中奖",
- "辣条"
- ]
- }
-}
\ No newline at end of file
diff --git a/data/latest_version.json b/data/latest_version.json
index 436c604..0d51103 100644
--- a/data/latest_version.json
+++ b/data/latest_version.json
@@ -5,7 +5,7 @@
"source": "https://github.com/lkeme/BiliHelper-personal",
"raw_url": "https://cdn.jsdelivr.net/gh/lkeme/BiliHelper-personal@master/data/latest_version.json",
"purge_url": "https://purge.jsdelivr.net/gh/lkeme/BiliHelper-personal@master/data/latest_version.json",
- "version": "0.9.4.210623",
+ "version": "0.9.5.210624",
"des": "程序有更新,请及时线上查看更新哦~",
- "time": "2021年6月23日21:40:35"
+ "time": "2021年6月24日11:40:35"
}
\ No newline at end of file
diff --git a/data/reply_words.json b/data/reply_words.json
new file mode 100644
index 0000000..1380ede
--- /dev/null
+++ b/data/reply_words.json
@@ -0,0 +1,175 @@
+{
+ "DynamicForward": {
+ "default": [
+ "从未中奖,从未放弃[doge]",
+ "来当分母= =",
+ "让我中一次吧QAQ",
+ "继续分母",
+ "转发动态",
+ "单纯想中次奖",
+ "我我我",
+ "不错",
+ "来了来了",
+ "爱了",
+ "(;¬_¬)",
+ "(~_~;)",
+ "= =!",
+ "╮(╯▽╰)╭",
+ "(シ_ _)シ",
+ ">_<",
+ "(๑• _ •๑)",
+ "(:3_ヽ)_",
+ "(⌒▽⌒)",
+ "(`・ω・´)",
+ "(◦˙▽˙◦)",
+ "(=・ω・=)",
+ "_Σ:з」∠)シ",
+ "o(∩_∩)o",
+ "(〜 ̄▽ ̄)〜",
+ "(๑• ▽ •๑)",
+ "哔哩哔哩干杯~",
+ "Bilibili 干杯~",
+ "bilibili 干杯~",
+ "[doge][doge][doge]",
+ "冲冲冲[打call][打call]",
+ "[doge]",
+ "万一可能呢",
+ "我的",
+ "[打call]",
+ "就看欧不欧啦",
+ "来了",
+ "中",
+ "好诶",
+ "好耶",
+ "拉低中奖率",
+ "重在拉低中奖率[doge]",
+ "分母",
+ "评论",
+ "成为一个分母,希望成为分子",
+ "[藏狐]我来",
+ "重在参与[OK]",
+ "就是我[给心心][打call]",
+ "抽起来!!!",
+ "我也要中奖",
+ "冲",
+ "[拥抱]",
+ "万一呢?",
+ "我来了",
+ "欧欧欧",
+ "冲冲冲",
+ "谢谢给我一个中奖的机会",
+ "奖励不重要,重要的是心[doge]",
+ "许愿",
+ "分母报道",
+ "大吉大利",
+ "欧气满满",
+ "不想再当分母",
+ "吸欧气",
+ "中!!!",
+ "",
+ "好运来",
+ "啊~",
+ "哈哈哈",
+ "抽奖奖(⌒▽⌒)",
+ "中奖绝缘体",
+ "绝缘体",
+ "求脱非入欧",
+ "好运",
+ "中奖绝缘体表示想中!",
+ "呜呜呜非洲人来了",
+ "选我吧",
+ "一定会中",
+ "好运bufff",
+ "滴滴滴",
+ "哇哇哇哇",
+ "万一呢",
+ "非酋日常",
+ "加油",
+ "抽中吧",
+ "我要",
+ "想欧一次!",
+ "拉低中奖率233",
+ "想要...",
+ "路过拉低中奖率",
+ "希望有个好运气",
+ "中奖",
+ "什么时候才会抽到我呢?",
+ "试试水,看看能不能中",
+ "过来水一手",
+ "这辈子都不可能中奖的",
+ "先拉低中奖率23333",
+ "先抽奖,抽不到再说",
+ "嘤嘤嘤",
+ "捞一把",
+ "我就想中一次",
+ "拉低拉低",
+ "试一试",
+ "搞一搞",
+ "中奖什么的不可能的( ̄▽ ̄)",
+ "听说我中奖了?",
+ "脱非转欧",
+ "emm",
+ "无聊.。。。。",
+ "[星星眼]",
+ "[妙啊]",
+ "[辣眼睛]",
+ "[吃瓜][吃瓜]",
+ "[滑稽]",
+ "[呲牙]",
+ "[打call][打call]",
+ "[哈欠][哈欠]",
+ "[吃瓜]不嫌事大",
+ "[口罩]",
+ "[思考]",
+ "[冷][冷][冷]",
+ "次次参加",
+ "从来没中过",
+ "让我中吧",
+ "来中个吧",
+ "送妹子多好",
+ "再送个小姐姐咋样",
+ "忍不住抽",
+ " (* ̄︶ ̄)",
+ "如影随形",
+ "参加够多就能中奖",
+ "参加够多就能当分子",
+ "[喜极而泣]",
+ "我是天选之子",
+ "中一次吧!",
+ "坚持不懈,迎难而上,开拓创新!",
+ "[OK][OK]",
+ "抽个奖和寂寞",
+ "中中",
+ "坚持不懈,迎难而上!",
+ "呵呵",
+ "我一般不抽奖,除非忍不住。",
+ "[OK]",
+ "[喜欢]",
+ "[偷笑]",
+ "[笑]",
+ "[吃瓜]",
+ "[奋斗]",
+ "在",
+ "冲吖~",
+ "[保佑][保佑]",
+ "从未中,从未停",
+ "[抠鼻][抠鼻]",
+ "来力",
+ "秋梨膏",
+ "从不缺席",
+ "分子",
+ "1",
+ "好",
+ "rush",
+ "来来来",
+ "ok",
+ "凑热闹",
+ "我要我要[打call]",
+ "我还能中!让我中!!!",
+ "大家都散了吧,已经抽完了,是我的",
+ "给我中一次吧!",
+ "我来抽个奖",
+ "[doge][doge][doge]"
+ ]
+ }
+}
\ No newline at end of file
diff --git a/src/core/Curl.php b/src/core/Curl.php
index 6052dd0..c83bd5b 100644
--- a/src/core/Curl.php
+++ b/src/core/Curl.php
@@ -243,7 +243,7 @@ class Curl
'Connection' => 'keep-alive',
// 'Content-Type' => 'application/x-www-form-urlencoded',
// 'User-Agent' => 'Mozilla/5.0 BiliDroid/5.51.1 (bbcallen@gmail.com)',
- 'User-Agent' => 'Mozilla/5.0 BiliDroid/6.29.0 (bbcallen@gmail.com) os/android model/MuMu mobi_app/android build/6290300 channel/bili innerVer/6290300 osVer/7.1.2 network/2',
+ 'User-Agent' => 'Mozilla/5.0 BiliDroid/6.30.0 (bbcallen@gmail.com) os/android model/MuMu mobi_app/android build/6300400 channel/bili innerVer/6300400 osVer/7.1.2 network/2',
// 'Referer' => 'https://live.bilibili.com/',
];
$pc_headers = [
diff --git a/src/plugin/Dynamic.php b/src/plugin/Dynamic.php
index 69ac92a..29df509 100644
--- a/src/plugin/Dynamic.php
+++ b/src/plugin/Dynamic.php
@@ -9,9 +9,12 @@
namespace BiliHelper\Plugin;
use BiliHelper\Core\Curl;
+use BiliHelper\Util\FilterWords;
class Dynamic
{
+ use FilterWords;
+
// 228584 14027 434405 7019788 3230836
private static $topic_list = [
3230836 => '',
@@ -36,16 +39,22 @@ class Dynamic
// new
foreach ($data['data']['cards'] as $article) {
$article_id = $article['desc']['dynamic_id'];
+ // 获取 description
+ $card = json_decode($article['card'], true);
$item = [
'uid' => $article['desc']['uid'],
'rid' => $article['desc']['rid'],
'did' => $article_id,
'tm' => $article['desc']['timestamp'],
+ 'desc' => $card['item']['description']
];
-
+ // 过滤为true 就跳过
+ if (self::filterLayer($item)) continue;
+ // 不要原始desc
+ unset($item['desc']);
self::$article_list[$article_id] = $item;
}
-// $has_more = 0;
+ // $has_more = 0;
// more ??
// https://api.vc.bilibili.com/topic_svr/v1/topic_svr/topic_history?topic_name=转发抽奖&offset_dynamic_id=454347930068783808
}
@@ -62,7 +71,7 @@ class Dynamic
* @param string $extension
* @return bool
*/
- public static function dynamicRepost($rid, $content = "", $type = 1, $repost_code = 3000, $from = "create.comment", $extension = '{"emoji_type":1}'): bool
+ public static function dynamicRepost($rid, string $content = "", int $type = 1, int $repost_code = 3000, string $from = "create.comment", string $extension = '{"emoji_type":1}'): bool
{
$url = "https://api.vc.bilibili.com/dynamic_repost/v1/dynamic_repost/reply";
$payload = [
@@ -90,7 +99,7 @@ class Dynamic
* @param int $plat
* @return bool
*/
- public static function dynamicReplyAdd(int $rid, $message = "", $type = 11, $plat = 1): bool
+ public static function dynamicReplyAdd(int $rid, string $message = "", int $type = 11, int $plat = 1): bool
{
$url = "https://api.bilibili.com/x/v2/reply/add";
$payload = [
@@ -133,7 +142,7 @@ class Dynamic
* @param int $uid
* @return array
*/
- public static function getMyDynamic($uid = 0): array
+ public static function getMyDynamic(int $uid = 0): array
{
$uid = $uid == 0 ? getUid() : $uid;
$url = "https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/space_history";
@@ -197,7 +206,7 @@ class Dynamic
* @param int $type_list
* @return array|mixed
*/
- public static function getDynamicTab($uid = 0, $type_list = 268435455)
+ public static function getDynamicTab(int $uid = 0, int $type_list = 268435455)
{
$uid = $uid == 0 ? getUid() : $uid;
$url = "https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/dynamic_new";
@@ -222,6 +231,33 @@ class Dynamic
}
}
return $card_list;
+ }
+ /**
+ * @use 过滤层
+ * @param array $item
+ * @return bool
+ */
+ protected static function filterLayer(array $item): bool
+ {
+ // 过滤描述
+ $default_words = self::$store->get("DynamicForward.default");
+ $custom_words = empty($words = getConf('filter_words', 'dynamic')) ? [] : explode(',', $words);
+ $total_words = array_merge($default_words, $custom_words);
+ foreach ($total_words as $word) {
+ if (strpos($item['desc'], $word) !== false) {
+ return true;
+ }
+ }
+ // 过滤UID
+ $uid_list = self::$store->get("Common.uid_list");
+ if (array_key_exists((int)$item['uid'], $uid_list)) {
+ return true;
+ }
+ // 过滤粉丝数量
+ if (Live::getMidFollower((int)$item['uid']) < getConf('min_fans_num', 'dynamic')) {
+ return true;
+ }
+ return false;
}
}
\ No newline at end of file
diff --git a/src/plugin/Forward.php b/src/plugin/Forward.php
index 173b854..a9ca109 100644
--- a/src/plugin/Forward.php
+++ b/src/plugin/Forward.php
@@ -21,6 +21,7 @@ namespace BiliHelper\Plugin;
use BiliHelper\Core\Log;
use BiliHelper\Util\TimeLock;
+use Noodlehaus\Config;
class Forward
{
@@ -37,10 +38,10 @@ class Forward
private static $group_id = null;
- private static $msg = '从未中奖,从未放弃[doge]';
-
private static $draw_follow = [];
+ private static $repository = APP_DATA_PATH . 'reply_words.json';
+
public static function run()
{
@@ -59,10 +60,6 @@ class Forward
public static function start(): bool
{
- //更改自动回复
- if (getConf('auto_reply_text', 'dynamic') != self::$msg) {
- self::changeReply();
- }
// 取关未中奖
if (getConf('clear_group_follow', 'dynamic')) {
self::clearDynamic();
@@ -79,16 +76,6 @@ class Forward
return true;
}
- /**
- *更改自动回复
- */
- public static function changeReply()
- {
- self::$msg = getConf('auto_reply_text', 'dynamic');
- $msg = self::$msg;
- Log::info("已将自动回复改为\"{$msg}\"");
- }
-
/**
* 自动转发抽奖
*/
@@ -104,10 +91,10 @@ class Forward
}
// 评论
Log::info("[动态抽奖]-评论: {$did} {$article['rid']}");
- if (Dynamic::dynamicReplyAdd($article['rid'], self::$msg)) {
+ if (Dynamic::dynamicReplyAdd($article['rid'], self::getReplyMsg())) {
// 转发
Log::info("[动态抽奖]-转发: {$did}");
- if (Dynamic::dynamicRepost($did, self::$msg)) {
+ if (Dynamic::dynamicRepost($did, self::getReplyMsg())) {
// 关注
Log::info("[动态抽奖]-关注: {$did} {$article['uid']}");
self::addToGroup($article['uid']); //
@@ -219,12 +206,15 @@ class Forward
private static function clearAllDynamic()
{
$dynamicList = Dynamic::getMyDynamic();
+ $msg_list = self::getReplyMsgList();
foreach ($dynamicList as $dynamic) {
$did = $dynamic['desc']['dynamic_id'];
$card = json_decode($dynamic['card'], true);
- if (strpos($card['item']['content'], self::$msg) !== false) {
- Log::info("[删除所有动态] 删除动态 {$did}");
- Dynamic::removeDynamic($did);
+ foreach ($msg_list as $msg) {
+ if (strpos($card['item']['content'], $msg) !== false) {
+ Log::info("[删除所有动态] 删除动态 {$did}");
+ Dynamic::removeDynamic($did);
+ }
}
}
}
@@ -242,7 +232,7 @@ class Forward
$tags = User::fetchTags();
$tag_id = array_search(self::$group_name, $tags);
// 如果不存在则调用创建
- self::$group_id = $tag_id ? $tag_id : User::createRelationTag(self::$group_name);
+ self::$group_id = $tag_id ?: User::createRelationTag(self::$group_name);
}
// 是否在关注里
$default_follows = self::getDefaultFollows();
@@ -269,4 +259,34 @@ class Forward
}
return self::$default_follows;
}
+
+ /**
+ * @use 获取回复 all
+ * @return array
+ */
+ private static function getReplyMsgList(): array
+ {
+ $data = Config::load(self::$repository);
+ $data = $data->get("DynamicForward.default");
+ array_push($data, getConf('auto_reply_text', 'dynamic'));
+ return $data;
+ }
+
+ /**
+ * @use 获取回复 1
+ * @return string
+ */
+ private static function getReplyMsg(): string
+ {
+ //更改自动回复
+ if (getConf('auto_reply_text', 'dynamic') != '') {
+ $msg = getConf('auto_reply_text', 'dynamic');
+ } else {
+ $data = self::getReplyMsgList();
+ shuffle($data);
+ $msg = array_pop($data);
+ }
+ Log::info("已将自动回复改为\"{$msg}\"");
+ }
+
}
diff --git a/src/plugin/Live.php b/src/plugin/Live.php
index 834eb44..2734a3a 100644
--- a/src/plugin/Live.php
+++ b/src/plugin/Live.php
@@ -432,4 +432,39 @@ class Live
}
return $room_ids;
}
+
+ /**
+ * @use 获取用户卡片
+ * @param int $mid
+ * @return array
+ */
+ public static function getMidCard(int $mid): array
+ {
+ $url = 'https://api.bilibili.com/x/web-interface/card';
+ $payload = [
+ 'mid' => $mid,
+ ];
+ //{"code":0,"message":"0","ttl":1,"data":{"card":{"mid":"1","name":"bishi","approve":false,"sex":"男","rank":"10000","face":"http://i1.hdslb.com/bfs/face/34c5b30a990c7ce4a809626d8153fa7895ec7b63.gif","DisplayRank":"0","regtime":0,"spacesta":0,"birthday":"","place":"","description":"","article":0,"attentions":[],"fans":154167,"friend":5,"attention":5,"sign":"","level_info":{"current_level":4,"current_min":0,"current_exp":0,"next_exp":0},"pendant":{"pid":0,"name":"","image":"","expire":0,"image_enhance":"","image_enhance_frame":""},"nameplate":{"nid":0,"name":"","image":"","image_small":"","level":"","condition":""},"Official":{"role":0,"title":"","desc":"","type":-1},"official_verify":{"type":-1,"desc":""},"vip":{"type":2,"status":1,"due_date":1727625600000,"vip_pay_type":1,"theme_type":0,"label":{"path":"","text":"年度大会员","label_theme":"annual_vip","text_color":"#FFFFFF","bg_style":1,"bg_color":"#FB7299","border_color":""},"avatar_subscript":1,"nickname_color":"#FB7299","role":3,"avatar_subscript_url":"http://i0.hdslb.com/bfs/vip/icon_Certification_big_member_22_3x.png","vipType":2,"vipStatus":1}},"following":false,"archive_count":2,"article_count":0,"follower":154167}}
+ $raw = Curl::get('other', $url, $payload);
+ return json_decode($raw, true);
+ }
+
+ /**
+ * @use 获取用户关注数
+ * @param int $mid
+ * @return int
+ */
+ public static function getMidFollower(int $mid): int
+ {
+ $follower = 0;
+ // root->data->follower
+ $data = self::getMidCard($mid);
+ if (isset($data['code']) && $data['code']) {
+ Log::warning("获取用户资料卡片失败: CODE -> {$data['code']} MSG -> {$data['message']} ");
+ } else {
+ // root->data->follower
+ $follower = $data['data']['follower'];
+ }
+ return $follower;
+ }
}
diff --git a/src/plugin/Sign.php b/src/plugin/Sign.php
index 4562eed..ae26d56 100644
--- a/src/plugin/Sign.php
+++ b/src/plugin/Sign.php
@@ -55,7 +55,7 @@ class Sign
'access_key' => getConf('access_token', 'login.auth'),
'actionKey' => 'appkey',
'appkey' => $appkey,
- 'build' => 6290300,
+ 'build' => 6300400,
'channel' => 'bili',
'device' => 'phone',
'mobi_app' => 'android',
@@ -84,7 +84,7 @@ class Sign
'access_key' => getConf('access_token', 'login.auth'),
'actionKey' => 'appkey',
'appkey' => $appkey,
- 'build' => 6290300,
+ 'build' => 6300400,
'device' => 'phone',
'mobi_app' => 'android',
'platform' => 'android',
diff --git a/src/util/FilterWords.php b/src/util/FilterWords.php
index 2bd744d..faac7b2 100644
--- a/src/util/FilterWords.php
+++ b/src/util/FilterWords.php
@@ -18,7 +18,7 @@ trait FilterWords
{
protected static $store;
protected static $store_status;
- protected static $repository = APP_DATA_PATH . 'filter_words.json';
+ protected static $repository = APP_DATA_PATH . 'filter_library.json';
/**
* @use 加载配置信息