编写谷歌浏览器的油猴脚本

之前一直知道油猴插件,但是一直没有认真用过。最近百度结果老是存在csdn那种推荐的结果,非常烦人,因此想到了用油猴脚本。
打算在https://gitee.com/janbar/tampermonkey这个仓库管理后续我的油猴脚本。
根据https://greasyfork.org/zh-CN这个常用获取油猴插件的网站可以找到各个浏览器安装油猴插件的方法。
脚本如下,可以自行在函数中添加自己的过滤规则,参数txt包含了百度结果条目里面的所有文本。
并且支持在搜索和翻页时也能移除不希望展示的条目。

// ==UserScript==
// @name         百度搜索结果过滤
// @namespace    https://gitee.com/janbar/tampermonkey
// @version      0.0.1
// @description  去掉不想展示的结果
// @author       janbar
// @include      https://www.baidu.com/s*
// @match        https://www.baidu.com/*
// @icon         https://www.baidu.com/favicon.ico
// @license      MIT License
// @grant        window.onurlchange
// ==/UserScript==

(function () {
    'use strict';

    function filter(txt) {
        return txt.indexOf("csdn已为您找到关于") > -1 || txt.indexOf("CSDN下载") > -1;
    }
    function csdnDel() {
        // 循环找到需要屏蔽的结果,找不到则停止定时器
        var lp = setInterval(function () {
            var cnt = 0, downList = document.getElementsByClassName("result c-container new-pmd");
            for (var i = 0; i < downList.length; i++) {
                if (downList[i].style.display != "none" && filter(downList[i].innerText)) {
                    downList[i].style.display = "none";
                    cnt++;
                }
            }
            if (cnt == 0) {
                clearInterval(lp);
            }
        }, 1000);
    }

    csdnDel();
    if (window.onurlchange === null) {
        window.addEventListener('urlchange', csdnDel)
    }

})();
posted @ 2021-12-12 16:00  janbar  阅读(286)  评论(0编辑  收藏  举报