Skip to content

Commit

Permalink
v2.0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
hmjz100 authored Sep 26, 2024
1 parent 0566c39 commit 2f74c16
Showing 1 changed file with 89 additions and 7 deletions.
96 changes: 89 additions & 7 deletions (改)B站成分检测器.user.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// ==UserScript==
// @name (改)B站成分检测器
// @version 2.0.4
// @version 2.0.5
// @author hmjz100,xulaupuz,trychen
// @namespace github.com/hmjz100
// @license GPLv3
// @description 《也许同类型中最好用?》系列 - B站评论区自动标注成分,支持动态和关注识别以及手动输入 UID 识别,默认标注包括抽奖、原神、崩坏3、崩坏星穹铁道、绝区零、明日方舟、碧蓝航线、蔚蓝档案、鸣潮、战双帕弥什、尘白禁区、少女前线、少女前线2、NIKKE胜利女神、VTuber、王者荣耀、和平精英、三国杀、Minecraft、迷你世界、初生科技、火柴人、Roblox、火影忍者、暗区突围、香肠派对、穿越火线、地下城与勇士、绝地求生、英雄联盟、魔兽世界、CSGO、第五人格、蛋仔派对、GLITCH、彩虹六号:围攻、无畏契约、战争雷霆、小马宝莉、孙笑川、电棍otto、学生、互助。
// @description 《也许同类型中最好用?》系列 - B站评论区自动标注成分,支持动态和关注识别以及手动输入 UID 识别,默认标注包括 抽奖、原神、崩坏3、崩坏星穹铁道、绝区零、明日方舟、碧蓝航线、蔚蓝档案、鸣潮、战双帕弥什、尘白禁区、少女前线、少女前线2、NIKKE胜利女神、VTuber、王者荣耀、和平精英、三国杀、Minecraft、迷你世界、初生科技、火柴人、Roblox、火影忍者、暗区突围、香肠派对、穿越火线、地下城与勇士、绝地求生、英雄联盟、魔兽世界、CSGO、第五人格、蛋仔派对、GLITCH、彩虹六号:围攻、无畏契约、战争雷霆、Fate/Grand Order、女神异闻录: 夜幕魅影、黑神话: 悟空、小马宝莉、孙笑川、电棍otto、涩涩、这辈子有了、学生、互助、伪成分
// @homepage https://github.com/hmjz100/bilibili-comment-checker/
// @supportURL https://github.com/hmjz100/bilibili-comment-checker/issues
// @match *://*.bilibili.com/*
Expand Down Expand Up @@ -225,7 +225,7 @@
490670548, // Minecraft-ICE
614678902, // Crawler工作室
631881755, // 豆哥啦
661547786, // 绯色色i
661547786, // 绯色批i
1183597757, // 米可-Micro
1377901474, // 东南大学Minecraft社
1670040346, // Minecraft-Curios
Expand Down Expand Up @@ -270,6 +270,7 @@
7955948, // FTG_Win11
8053098, // 十炮君
10828819, // BSoD正在玩
11451610, // 白小是就我
15052067, // Gelan丶
17762573, // 退休就养狗
20567718, // So_Y0ung
Expand Down Expand Up @@ -322,7 +323,7 @@
356882513, // 被重组吃掉的虚拟桌面
357779530, // 空巢老KriaStans
361858612, // 于小丘
362451533, // NC_Memz
362451533, // NC_Memz -> Aero123321
365129777, // DrAMA-MEMZ
365166874, // RZ-world
367151287, // A奶味伏特加
Expand Down Expand Up @@ -795,6 +796,7 @@
7955948, // FTG_Win11
8053098, // 十炮君
10828819, // BSoD正在玩
11451610, // 白小是就我
15052067, // Gelan丶
17762573, // 退休就养狗
20567718, // So_Y0ung
Expand Down Expand Up @@ -847,7 +849,7 @@
356882513, // 被重组吃掉的虚拟桌面
357779530, // 空巢老KriaStans
361858612, // 于小丘
362451533, // NC_Memz
362451533, // NC_Memz -> Aero123321
365129777, // DrAMA-MEMZ
365166874, // RZ-world
367151287, // A奶味伏特加
Expand Down Expand Up @@ -1837,6 +1839,30 @@
3546658866464818, // 战争雷霆视频搬运工
]
},
{
displayName: "Fate/Grand Order",
displayIcon: "https://i0.hdslb.com/bfs/face/464d57b188e80e96afb054005a311d243c827d59.jpg@100w_100h.webp",
keywords: ["命运-冠位指定", "命运/冠位指定", "FGO", "Fate/Grand Order", "Fate", "Grand Order", "冠位指定", "御主", "从者"],
followings: [
233108841, // 命运-冠位指定官方号的 UID
]
},
{
displayName: "女神异闻录: 夜幕魅影",
displayIcon: "https://i0.hdslb.com/bfs/face/af550ab38b0e231dfdd8c85dbcf27ed599820e34.jpg@100w_100h.webp",
keywords: ["互动抽奖 #女神异闻录", "#女神异闻录", "#解构愤怒的骇客#", "P5X", "P5R", "佐原双叶", "雨宫莲", "新岛真", "坂本龙司", "摩尔加纳"],
followings: [
1606210274, // 女神异闻录夜幕魅影官方号的 UID
]
},
{
displayName: "黑神话: 悟空",
displayIcon: "https://i0.hdslb.com/bfs/face/5fdac7d9820175f5f0ae1b6c33968bb8f64cc82c.jpg@100w_100h.webp",
keywords: ["#六样情#", "黑神话:悟空", "黑神话: 悟空", "黑神话:悟空", "黑神话·悟空", "黑神话悟空", "Black Myth: Wukong", "Black Myth:Wukong", "黑悟空", "黑吗喽"],
followings: [
642389251, // 黑神话悟空官方号的 UID
]
},
{
displayName: "小马宝莉",
displayIcon: "https://i0.hdslb.com/bfs/face/7a81dfd45db8333cbbce412b9a93d0f732261dd0.jpg@100w_100h.webp",
Expand Down Expand Up @@ -1955,6 +1981,30 @@
1728547, // 泠风kaze
],
},
{
displayName: "涩涩",
displayIcon: "😍",
keywords: ["R16", "R18", "16+"],
followings: [
// 目前先收集这么多,如需完善数据可提 Pull Request 或者 Issues
3403527, // 蒋七七ChiChan
10671099, // 蓝纹兔子
12506114, // 无所事事青叶酱
17328861, // 御坂猫猫neko
35347825, // 沉迷吃饭的萧雪
73491123, // 夜御寒
138789848, // 铃舟同学吖
233227396, // 叫我长藤就好了
330657633, // 钉宫草莓
413417470, // 房房别闹
1306242888, // 次元与星空之缘
],
},
{
displayName: "这辈子有了",
displayIcon: "https://i0.hdslb.com/bfs/emote/63c9d1a31c0da745b61cdb35e0ecb28635675db2.png@100w_100h.webp",
keywords: ["这辈子有了"],
},
{
displayName: "学生",
displayIcon: "学",
Expand All @@ -1967,6 +2017,14 @@
}
]

const checkerSpecial = [
{
displayName: "伪成分",
displayIcon: "🤩",
reason: "这辈子有了",
}
]

/**
* 对输入的UID数字进行排序,并保留注释。
* 已暴露到脚本作用域的全局窗口,您可直接在浏览器控制台调用该函数。
Expand Down Expand Up @@ -2026,6 +2084,9 @@
for (let item of checkers) {
text = (text ? text : "") + item.displayName + "、"
}
for (let item of checkerSpecial) {
text = (text ? text : "") + item.displayName + "、"
}
console.log(`【(改)B站成分检测器】即时\n${text.slice(0, -1)}`)
}

Expand Down Expand Up @@ -2875,7 +2936,6 @@
let card = cardContent.data.card
detectComposition(card.mid, card.name, true)
.then((found) => {
checked[card.mid] = found
let result = {
mid: card.mid,
name: card.name,
Expand Down Expand Up @@ -3345,6 +3405,7 @@
// 检查动态内容
try {
let dynamic = await dynamicRequest();
let dynamicFound = [];
for (let rule of checkers) {
if (rule.keywords) {
for (let i = 0; i < dynamic.length; i++) {
Expand Down Expand Up @@ -3372,7 +3433,7 @@
}

if (matchedRule) {
found.push({
dynamicFound.push({
...matchedRule,
full: item,
reason: matchedReason,
Expand All @@ -3384,6 +3445,27 @@
}
}
}
let countMap = {}, finalFound = [];
// 先统计好重复出现次数
dynamicFound.forEach(found => {
let item = found.item;
countMap[item] = (countMap[item] || 0) + 1;
});
// 过滤伪成分
dynamicFound.forEach(found => {
let item = found.item;
if ((countMap[item] >= 5 && item.includes("、")) || countMap[item] > 5) {
finalFound.push({
...checkerSpecial[0],
full: found.full,
item: found.item,
keyword: `${found.displayName} - ${found.keyword}`
})
} else {
finalFound.push(found);
}
});
found.push(...finalFound);
} catch (error) {
if (debug) console.error(`【(改)B站成分检测器】即时\n获取 ${name} ${id} 空间动态失败`, error);
errors.push(error);
Expand Down

0 comments on commit 2f74c16

Please sign in to comment.