您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
在各大内容平台(默认支持知乎、微博和贴吧)展开评论区后,按下Ctrl+X键(或⌘+X键)屏蔽某些不友善言论。折叠评论区并再次打开以恢复原貌。
当前为
// ==UserScript== // @name Ctrl+X键阴阳人屏蔽器 // @namespace https://mr-metasequoia.github.io/tools/YYGQ/ // @version 0.7.2 // @description 在各大内容平台(默认支持知乎、微博和贴吧)展开评论区后,按下Ctrl+X键(或⌘+X键)屏蔽某些不友善言论。折叠评论区并再次打开以恢复原貌。 // @author 水杉metasequoia // @match *://*.zhihu.com/* // @match *://*.weibo.com/* // @match *://tieba.baidu.com/p/* // @icon https://s3.bmp.ovh/imgs/2022/07/23/b3927876e3d4ba39.png // @grant none // @license MPL // ==/UserScript== //支持正则表达式 var badword = ['全在美方','贏麻了','润','底层','孝子','奴','老爷','小鬼','键盘','杠精','热搜','拐零','尬黑','人性','小作文' ,'有没有可能|有没有这种可能|有没有这样一种可能','好似','哈{6,}'] //var badword = ['的|是']//'的|是'在汉语中出现频率很高,可以用作测试。 var where = ['CommentContent css-1ygdre8','wbpro-list','card-review s-ptb10','l_post j_l_post l_post_bright ']//知乎,微博首页,微博搜索结果页,贴吧 //贴吧的改变状态 var changed = false function findLen() { for(let i=0;i<where.length;i++) { if(document.getElementsByClassName(where[i]).length!=0) { let len = document.getElementsByClassName(where[i]).length switch(i) { case 0: return [len,"知乎"] break case 1: return [len,"微博首页"] break case 2: return [len,"微博搜索结果页"] break case 3: return [len,"贴吧"] break } } } return [0,"未知"] } (function() { document.addEventListener('keydown',e=>{ //var key = e.key; const { ctrlKey , metaKey, key } = e; //comment和len放里面,是为了每次监听新的值 //这里的几个comment主要为了让后面代码简短一点。 var zhihuComment = document.getElementsByClassName("CommentContent css-1ygdre8") var weibo1Comment = document.getElementsByClassName("wbpro-list")//微博首页,这个div包括了评论的次级评论 var weibo2Comment = document.getElementsByClassName("card-review s-ptb10")//微博搜索结果页 var tiebaComment = document.getElementsByClassName("l_post j_l_post l_post_bright ") var len=findLen()[0] var loc=findLen()[1] if( ctrlKey || metaKey )//按下Ctrl键+X,或mac系统的⌘键+X { if(key === 'x')//x的意思是抽象手势“哒咩!”,好按并避免和知乎微博的快捷键冲突。 { console.log(loc+"评论数量:"+len) if(loc=="贴吧")//贴吧的评论区不是生成的,需要整页恢复(刷新)——即需要单独考虑其逻辑。 { if(!changed) { for(let i=0;i<len;i++) { for(let j=0;j<badword.length;j++) { let bad = new RegExp(badword[j],'g');//本次循环得到的badword if((parseInt(tiebaComment[i].innerHTML.split("?").length) - 1)>3) { document.getElementsByClassName("l_post j_l_post l_post_bright ")[i].innerHTML = "「急急國王の碎念」" }else { document.getElementsByClassName("l_post j_l_post l_post_bright ")[i].innerHTML = tiebaComment[i].innerHTML.replace(bad,'🌳') } } } changed = true console.log("after changed:"+changed) } else { location.reload(); } } //贴吧以外其他平台的逻辑 else { for(let i=0;i<len;i++) { for(let j=0;j<badword.length;j++) { //这里可以再加一个循环,即判断场景。 let bad = new RegExp(badword[j],'g'); if(loc=="知乎") { if(zhihuComment[i].innerHTML.indexOf("<img src=\"https://pic2.zhimg.com/v2-3846906ea3ded1fabbf1a98c891527fb.png\" class=\"sticker\">") != -1) { document.getElementsByClassName("CommentContent css-1ygdre8")[i].innerHTML = "「阴阳人の怪話」" }else if((parseInt(zhihuComment[i].innerHTML.split("?").length) - 1)>3)//一个评论中使用超过3个问号 { document.getElementsByClassName("CommentContent css-1ygdre8")[i].innerHTML = "「急急國王の碎念」" } else { document.getElementsByClassName("CommentContent css-1ygdre8")[i].innerHTML = zhihuComment[i].innerHTML.replace(bad,'🌳') } } else if(loc=="微博首页") { if((parseInt(weibo1Comment[i].innerHTML.split("?").length) - 1)>3) { document.getElementsByClassName("wbpro-list")[i].innerHTML = "「急急國王の碎念」" }else { document.getElementsByClassName("wbpro-list")[i].innerHTML = weibo1Comment[i].innerHTML.replace(bad,'🌳') } } else if(loc=="微博搜索结果页") { if((parseInt(weibo2Comment[i].innerHTML.split("?").length) - 1)>3) { document.getElementsByClassName("card-review s-ptb10")[i].innerHTML = "「急急國王の碎念」" }else { document.getElementsByClassName("card-review s-ptb10")[i].innerHTML = weibo2Comment[i].innerHTML.replace(bad,'🌳') } } else { console.log("暂不支持的平台") } } } } } } }) })(); //我知道这代码质量很差,但闭上眼睛当作黑盒来使用的话——其实也还彳亍吧?