您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Block unwanted replies
// ==UserScript== // @name 再见灌水回复 // @author T子大大 // @description Block unwanted replies // @description:zh-CN 在使用各大论坛时出现的一些已知的无用信息回复例如:沙发,大佬厉害,6666等..。将会被屏蔽显示在最下面,可以再论坛最顶层看到推荐及有用信息的回复减少问题的重复性 // @namespace https://greasyfork.org/zh-CN/users/1031190-t%E5%AD%90 // @match http*://*/* // @version 0.3 // @grant none // ==/UserScript== (function() { 'use strict'; console.log("欢迎使用-T子制作") const regexArray = [/0000/,/1111/,/2222/,/3333/,/4444/,/5555/,/6666/,/7777/,/8888/,/9999/, /试试看/,/好东西/,/看起来/, /很赞同/,/顶一下/,/学习了/,/我看看/,/沙发/,/来看看/, /这个牛/,/很奈斯/,/牛牛牛/,/冇/,/冇/,/冇/, /感谢分享/,/感谢无私/,/谢谢提供/,/谢谢技术/,/冇/,/冇/, /感谢大大/,/感谢更新/,/冇/,/冇/,/冇/,/冇/, /DDDD/,/SSSS/,/冇/,/冇/,/冇/,/冇/, /感恩楼主/,/感恩大佬/,/感恩老板/,/感恩感恩/,/感恩分享/,/感恩老师/,/感恩楼组/,/感恩楼楼/,/感恩大神/,/冇/,/冇/,/冇/, /感谢楼主/,/感谢大佬/,/感谢老板/,/感谢感谢/,/感谢分享/,/感谢老师/,/感谢楼组/,/感谢楼楼/,/感谢大神/,/冇/,/冇/,/冇/, /多谢楼主/,/多谢大佬/,/多谢老板/,/多谢多谢/,/多谢分享/,/多谢老师/,/多谢楼组/,/多谢楼楼/,/多谢大神/,/冇/,/冇/,/冇/, /谢谢楼主/,/谢谢大佬/,/谢谢老板/,/谢谢分享/,/谢谢老师/,/谢谢楼组/,/谢谢楼楼/,/谢谢大神/,/冇/,/冇/,/冇/, /大佬真强/,/大佬牛逼/,/大佬真牛/,/大佬厉害/,/大佬无敌/,/冇/, /楼主无私/,/楼主辛苦/,/楼主好人/,/冇/,/冇/,/冇/, /作者辛苦/,/冇/,/冇/,/冇/,/冇/,/冇/, /退币退币/,/冇/,/冇/,/冇/,/冇/,/冇/, /学习一下/,/支持一下/,/测试一下/,/冇/,/冇/,/冇/, /终于更新/,/威武霸气/,/兄弟分享/, /就是大佬/,/必须支持/,/必须点赞/, /太感谢了/,/多谢分享/,/晚点试试/,/非常感谢/,/非常NICE/, /真的厉害/,/点赞楼主/, /YYDS/,/必须学习/,/正好需要/,/我正需要/,/冇/,/冇/, /下来看看/,/下来试试/,/下载看看/,/下载试试/,/下载备用/,/冇/, /啊啊啊啊/,/顶顶顶顶/,/学习学习/,/好好学习/,/养好习惯/,/冇/, /研究研究/,/牛逼牛逼/,/支持支持/,/冇/,/冇/,/冇/, /地表最强/,/万分感谢/,/支持开源/,/岂能不顶/,/岂能不赞/,/冇/, /看看隐藏/,/看看大佬/,/冇/,/冇/,/冇/,/冇/, /额额额额/,/鹅鹅鹅鹅/,/看看看看/,/谢谢谢谢/,/冇/,/冇/,/冇/, /百度网盘/,/吾爱破解论坛/, /谢谢你楼主/,/楼主太给力/,/本帖隐藏内容/,/冇/,/冇/,/冇/, /看看好不好/,/看看是不是/,/看看不说话/,/冇/,/冇/,/冇/, /。。。。/,/!!!!/,/,,,,/,/冇/,/冇/,/冇/, ]; // 要匹配的正则表达式数组 let postlist = document.querySelector("#postlist");// 获取 #postlist 元素 if(!postlist){ return; } let postDivs = postlist.querySelectorAll("#postlist > div"); // 获取 postlist 内部的所有 div 元素 const wp = document.querySelector("#wp"); // 找到 #wp 元素 const newElement = document.createElement("div"); // 新建一个 div 元素 let UselesString = "",UsefulString = "";// 无用评论 and 正常评论 let textLength = 40; // 过滤文本的小于长度 let UselesNum = 0,UsefulNum = 0; // 无用次数 and 有用次数 // 遍历所有的 div 元素 postDivs.forEach((postDiv) => { // 获取当前 div 元素内部的 td 元素 let tdElement = postDiv.querySelector("tbody > tr:nth-child(1) > td.plc > div.pct > div.pcb > div.t_fsz > table > tbody > tr > td");// 获取评论 // 如果 td 元素存在 if (tdElement) { let textContent = tdElement.textContent.replace(/ /g, '').toLocaleUpperCase();// 过滤掉空格 // 判断文本长度是否小于设定长度才进入过滤 // 使用 Array.some() 方法检查 div 的文本内容是否与任一项匹配 // 判断文本长度小于6直接进入过滤 if (textContent.length <= textLength && regexArray.some(regex => textContent.match(regex)) ||textContent.length <= 6) { UselesString = UselesString+"<p>第"+ ++UselesNum +"条 的评论"+ textContent + "</p>"; postDiv.remove(); // 如果匹配,则删除该 div 元素 }else{ UsefulString = UsefulString + "<p><a href='#" + tdElement.id + "' style='color: blue;'>第" + ++UsefulNum + "条</a> 的评论" + textContent + "</p>"; } } }); // 在新元素中添加内容 newElement.innerHTML = "<p>T子 为您推荐" + UsefulNum + "条评论</p><hr>" + UsefulString; newElement.innerHTML = newElement.innerHTML + "<hr><p>T子 为您一共过滤掉了" + UselesNum + "条无用评论</p>" + UselesString + "</br>"; const firstChild = wp.firstChild; // 找到第一个子元素 wp.insertBefore(newElement, firstChild); // 将新元素插入到第一个子元素之前 // 添加事件监听器 document.addEventListener('click', function(event) { const target = event.target; // 如果点击的是链接 if (target.tagName === 'A') { const href = target.getAttribute('href'); // 如果链接的 href 属性以 # 开头 if (href && href[0] === '#') { const id = href.slice(1); const targetElement = document.getElementById(id); // 如果目标元素存在,则滚动到该元素 if (targetElement) { event.preventDefault(); targetElement.scrollIntoView({ behavior: 'smooth' }); } } } }); })();