移除Steam商店页面的无意义评评测和点赞按钮
// ==UserScript==
// @name Steam Reviews Filter
// @namespace http://tampermonkey.net/
// @version 0.4
// @description 移除Steam商店页面的无意义评评测和点赞按钮
// @author ChrisTitan
// @license GNU GPLv3
// @match https://store.steampowered.com/app/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=steampowered.com
// @require https://libs.baidu.com/jquery/1.7.2/jquery.min.js
// @require https://greasyfork.org/scripts/383527-wait-for-key-elements/code/Wait_for_key_elements.js?version=701631
// @grant none
// ==/UserScript==
waitForKeyElements (".user_reviews_sub_header", filterComments);
function filterComments (jNode) {
'use strict';
// 设置需要屏蔽的评论关键词,注意引号和逗号都是英文字符
const junks = ["猫猫", "摸一下", "点数", "牛子", "口了", "a cat", "⣿"];
const junk_pattern = new RegExp(junks.join("|"), "i");
// 设置是否移除点赞按钮,以防误点遭到连坐,true开启,false关闭
const remove_like = true;
// 开始获取评论页面元素
let left = document.querySelectorAll("#Reviews_summary > div > div:nth-child(1)")[0];
let left_comments = left.getElementsByClassName("review_box");
let right = document.querySelectorAll("#Reviews_summary > div > div.rightcol.recent_reviews")[0];
let right_comments = right.getElementsByClassName("review_box");
let i = left_comments.length;
while (i--) {
if (remove_like && (left_comments[i].getElementsByClassName("control_block").length > 0)) {
left_comments[i].getElementsByClassName("control_block")[0].remove();
}
if (left_comments[i].innerText.search(junk_pattern) > 0) {
left_comments[i].remove();
}
}
if ((10 - left_comments.length) > 0) {
let left_header = left.getElementsByClassName("user_reviews_sub_header")[0].innerHTML;
left.getElementsByClassName("user_reviews_sub_header")[0].innerHTML = left_header.replace(/ /, "-" + (10 - left_comments.length) + "条已过滤");
}
let j = right_comments.length;
let count = 0;
while (j--) {
if (remove_like && (right_comments[j].getElementsByClassName("control_block").length > 0)) {
right_comments[j].getElementsByClassName("control_block")[0].remove();
}
if (right_comments[j].innerText.search(junk_pattern) > 0) {
right_comments[j].remove();
count++;
}
}
if (count) {
let right_header = right.getElementsByClassName("user_reviews_sub_header")[0].innerHTML;
right.getElementsByClassName("user_reviews_sub_header")[0].innerHTML = right_header.replace(/$/, "-" + count + "条已过滤");
}
}