目 录CONTENT

文章目录

Chrome(Edge)使用油猴过滤百度垃圾搜索结果

hideonheart
2023-02-11 / 0 评论 / 0 点赞 / 24 阅读 / 0 字

Chrome(Edge)使用油猴过滤百度垃圾搜索结果

百度搜索出来很多结果,点进去很多自己不想看到的结果,以下是使用油猴插件加自定义脚本移除垃圾搜索结果的实例

下载油猴

先打开插件商店:chrome插件商店 或者 edge 扩展商店, 搜索 tampermonkey, 找安装数量最多的哪个就是了

chrome
image

edge

image-1676120108734

添加自定义脚本

  1. 进入油猴 管理面板

image-1676120217285

  1. 点击右边的 + 添加新脚本

image-1676120266602

  1. 把下面代码贴进去

// ==UserScript==
// @name        Baidu_Search_Result_Filter
// @author      dlee
// @version     1.0
// @description Block/Filter Baidu search results, which is contained some specific items_(en)
// @match     https://www.baidu.com/*
// @namespace   https://greasyfork.org/zh-CN/users/676366-kyouichirou
// @grant       none
// ==/UserScript==

(function() {
  'use strict';
  console.log("location.hostname:",location.hostname)

  // 过滤关键字在这里更改,这里我过滤了csdn的垃圾推荐等
  const blankList = "csdn已为您找到|术之多|bbsmax|oschina.net|腾讯云计算|51CTO博客";
  const noBlankList = "csdn博客";
  let iTems = blankList.split("|");
  let saveItems = noBlankList.split("|");
  let ilength = iTems.length + 1;
  let jlength = saveItems.length + 1;
  let removeTimer = null;

  document.body.addEventListener("DOMNodeInserted", debounceRemove);

  function debounceRemove() {
    if (removeTimer) {
      clearTimeout(removeTimer)
    }
    removeTimer = setTimeout(() => {
      removeitems()
    }, 30)
  }

  function removeitems() {
      let sDom = document.getElementById("content_left");
      if (sDom == null) return;
      sDom = sDom.getElementsByClassName("c-container");
      if (sDom == null) return;
      let i = sDom.length;
      if (i === 0) return;
      i--;
      let p = 0;
      for (i; i >= 0; i--) {
          let stext = sDom[i].innerHTML;
          for (let k = 0; k < ilength; k++) {
              if (stext.includes(iTems[k]) === true) {
                  let mark0 = false;
                  for (let j = 0; j < jlength; j++) {
                      if(stext.includes(saveItems[j]) == true) {
                          mark0 = true;
                      }
                  }
                  if(!mark0){
                      p++;
                      sDom[i].remove();
                      break;
                  }
              }
          }
      }
      if (p === 0) {
          return;
      } else if (p > 0 && p < 5) {
          removetips(0);
      } else {
          removetips(1); //如果多个过滤, 则搜索相关则无价值, 屏蔽
      }
      function removetips(x) {
          let sTable = document.getElementsByTagName("table");
          if (sTable == null) return;
          let m = sTable.length;
          if (m === 0) return;
          m--;
          if (x === 1) {
              sTable[m].hidden = true;
              return;
          }
          let rTable = sTable[m].getElementsByTagName("th");
          m = rTable.length;
          if (m < 1) return;
          for (let i = 0; i < m; i++) {
              let stext = rTable[i].innerText;
              for (let k = 0; k < ilength; k++) {
                  //为了避免其他元素的位置发生变化, 设置全透明
                  if (stext.includes(iTems[k]) === true) {
                      rTable[i].style.opacity = 0;
                      break;
                  }
              }
          }
      }
  }
})();

0

评论区