// ==UserScript== // @name 自动屏蔽三无用户点赞超过50%的回答 // @namespace http://bingkubei.cn/ // @version 0.5 // @description 自动屏蔽知乎三无用户点赞数>=50%的回答 // @author flowfire // @match https://www.zhihu.com/question/* // @grant none // @downloadURL none // ==/UserScript== /* 依次获取每个回答的点赞用户 取前50位(太多怕卡,可以自己定义) 没有头像,0赞同,0感谢,0提问,0回答 只要其中超过三样,就算做三无用户 三无用户点赞数超过样本的一半则自动屏蔽 */ (function() { "use strict"; var maxcount = 50;//检查数量,默认50,如果网好可以多设一点、最大可以设置成Infinity var timer = 1000;//循环检查的时钟,默认一秒循环一次,已经检查的不会再次检查,所以保持1s即可。 //回答区域 var box = $("#zh-question-answer-wrap"); var check = function(){box.children().each(function(index,dom){ //每个单独的回答 if($(dom).attr("data-checked-user")=="true"){ return; } $(dom).attr("data-checked-user","true"); var aid = $(dom).attr("data-aid"); var count = 0; var whiteuser = 0; var calcUser = function(nexturl){ if(nexturl===""||count>=maxcount){ if(count>10&&whiteuser/count>=0.5){ $(dom).children().hide(); //$(dom).css("background","red"); $(dom).append("
该回答由于超过半数点赞用户为三无用户而被隐藏(总赞数:"+count+",三无用户:"+whiteuser+"),【点击显示】
"); $(dom).find("[data-tag=\"hide-answer\"]").on("click",function(){ $(this).parent().children().show(); $(this).hide(); }); } return; } $.ajax({ url : nexturl, method : "get", dataType : "json", success : function(data){ count += data.payload.length; data.payload.forEach(function(data){ var zero = 0; var userinfo = $($.parseHTML(data)); var img = userinfo.find("img").attr("src"); var zt = userinfo.find(".status li span:eq(0)").html(); var gx = userinfo.find(".status li span:eq(1)").html(); var tw = userinfo.find(".status li a:eq(0)").html(); var hd = userinfo.find(".status li a:eq(1)").html(); if(img == "https://pic1.zhimg.com/da8e974dc_m.jpg") zero += 1; if(zt == "0 赞同") zero += 1; if(gx == "0 感谢") zero += 1; if(tw == "0 提问") zero += 1; if(hd == "0 回答") zero += 1; if(zero>=3) whiteuser += 1; }); calcUser(data.paging.next); } }); }; calcUser("/answer/"+aid+"/voters_profile"); }); }; setInterval(check,timer); // Your code here... })();