fuck_baijiahao

彻底过滤百度搜索中的百家号内容

  1. // ==UserScript==
  2. // @name fuck_baijiahao
  3. // @icon https://www.baidu.com/favicon.ico
  4. // @namespace http://greyh4t.github.com/
  5. // @version 0.6
  6. // @description 彻底过滤百度搜索中的百家号内容
  7. // @author greyh4t
  8. // @match *://www.baidu.com/s?*
  9. // @match *://www.baidu.com/
  10. // @grant none
  11. // ==/UserScript==
  12.  
  13. (function () {
  14. 'use strict';
  15. let key = " -site:baijiahao.baidu.com";
  16. let white_list = ["视频", "图片", "知道", "文库", "贴吧", "采购", "地图"];
  17.  
  18. let add = function () {
  19. let kw = document.getElementById("kw");
  20. if (kw.value && kw.value.indexOf(key) == -1) {
  21. kw.value = kw.value + key;
  22. }
  23. };
  24.  
  25. let clear = function () {
  26. let kw = document.getElementById("kw");
  27. let value = kw.value;
  28. if (value.endsWith(key)) {
  29. kw.value = value.substring(0, value.length - key.length);
  30. }
  31. };
  32.  
  33. let bar_handle = function (e) {
  34. // 兼容性处理
  35. let event = e || window.event;
  36. let target = event.target || event.srcElement;
  37. // 判断是否匹配目标元素
  38. if (target.nodeName == "A" && white_list.includes(target.textContent)) {
  39. target.href = target.href.replace(/(\+|20%|%20)-site(:|%3a)baijiahao.baidu.com/gi, "");
  40. }
  41. }
  42.  
  43. document.getElementById("su").addEventListener("click", add);
  44. document.getElementById("kw").addEventListener("focus", clear);
  45. document.getElementById("wrapper").addEventListener('mousedown', bar_handle);
  46. })();