Chrome 百度搜索热点过滤插件 - 开源软件

学习时,为了搜集最全的中文资料,有时候不得不使用Baidu搜索引擎。在你还是个小菜鸡的时候你可能会花费大量时间在百度上!

但是,时间久了你会发现,你总会被网络上一些奇奇怪怪或者有趣的事情吸引过去而逐渐忘记自己曾经打开百度是要干什么?时间就这样被一些无关紧要的有趣的事情给浪费了。

对于广告吧,还能使用广告清除插件来进行清除。但是一些非广告信息实在是广告清除插件不能判断了!无用的事情浪费了我大量时间!!!这让我十分生气!!尤其是百度的搜索热点,我真不想再看到它:

这些所谓的热搜,很多时候是带有娱乐性质的!往往会浪费我们太多太多时间!我们重要的事情是干什么?是学习!! 再愤怒之下,为了让我专心“科研”!不得不亲自动手,写一个浏览器插件了!!!

开工

浏览器版本:chrome 版本 71.0.3578.80(正式版本) (64 位)

程序是在这个chrome版本下进行构建的,其他平台我没有测试,如果有热心的网友对其他版本进行测试,可以在评论区注明您的版本,非常感谢您!

当动手的时候才发现,我还不会写插件.....只能边学习边做了;网络上有很多很好的教程,大家可以跟着学习一下,前提是要对前端技术有一定的了解。

参考教程如下:http://blog.haoji.me/chrome-plugin-develop.html#da-bao-yu-fa-bu 这篇博客内容很丰富,非常好!

学会写插件后,其实困难就不大了。

热点搜索去除的思路比较简单,下面对程序核心思想进行简单进行说明。下面就是插件的运行的状态,已经成功安装到chrome之中!

主要思想:使用Javascript 进行操作DOM,选中对应的dom子树,设置为不可显示,即可解决。超级简单

当你写插件的时候,还应该明白:chrome插件的js 和 网页本身的js 分别运行在两个不同的环境之中。但是他们公用同一个DOM。可以使用代码注入的方式,使得这两个js环境可以互相调用了。其他部分都很简单了,我就直接上代码了!如果你有不明白的地方可以到我的github主页,下载源代码进行分析:https://github.com/yaowenxu 我很菜,不要嘲笑我:)

图中killer.js 就是核心代码了!代码内容如下:

/*
    作者:yaowenxu
    时间:2018年12月21日16:59:41
    主页:https://github.com/yaowenxu
    功能:插件注入JavaScript 脚本
*/
// 日志模块
// 注意,必须设置了run_at=document_start 此段代码才会生效
stat = false; // 判断是否重新进行加载
document.addEventListener(‘DOMContentLoaded‘, function()
{
    // 注入自定义JS
    injectCustomJs();
    console.log("欢迎您使用——百度搜索热点过滤器");
    console.log("如果您感觉效果不错,请您前往:https://github.com/yaowenxu 给个star 吧");
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth()+1;
    var day = date.getDate();
    var time = date.toLocaleTimeString()
    console.log("当前时间:"+ year +"-" + month +"-" + day +" " +time);

    // 读取本地存储
    var status = null;
    chrome.storage.sync.get(["choice"], function(items) {
        console.log("当前配置状态:"+items.choice);
        status = items.choice;
        stat = false;
        if (status != "no"){
            removeAD();
            stat = true;
        }
    });

    $("#con-ar").bind(‘DOMSubtreeModified‘, function(e) {
        // 无内容
    });
});

// 当节点dom 中内容发生变化的时候,重新进行删除!!!不然百度热搜还是会出现!
document.addEventListener(‘DOMSubtreeModified‘, function()
{
    if(stat){
        var dom = $(".FYB_RD");
        dom.hide();  // 继续进行删除
    }

});

// 主模块,执行DOM 过滤操作
function removeAD(){
    var dom = $(".FYB_RD");
    console.log("获取到排行榜内容:");
    console.log(dom);
    dom.hide();
    //dom.remove();
}

// 向页面注入JS
function injectCustomJs(jsPath)
{
    jsPath = jsPath || ‘js/inject.js‘;
    var temp = document.createElement(‘script‘);
    temp.setAttribute(‘type‘, ‘text/javascript‘);
    // 获得的地址类似:chrome-extension://ihcokhadfjfchaeagdoclpnjdiokfakg/js/inject.js
    temp.src = chrome.extension.getURL(jsPath);
    temp.onload = function()
    {
        // 放在页面不好看,执行完后移除掉
        //this.parentNode.removeChild(this);
        console.log(chrome.extension.getURL(jsPath));
    };
    document.head.appendChild(temp);
}

有了这段核心代码,相信能读懂js的人都懂了吧。我就不多说了。简单记录一下就行了。

执行效果:你会发现应该出现搜索热点的地方果然不见了!

在程序书写的过程中,由于百度的异步刷新的机制,我再document上加载dom的变化事件的监听函数(如下代码所示),完美得解决了问题。最后希望您使用愉快!

document.addEventListener(‘DOMSubtreeModified‘, function()
{
    if(stat){
        var dom = $(".FYB_RD");
        dom.hide();  // 继续进行删除
    }
});

安装方式:

访问:https://github.com/yaowenxu/Hot-Search-Killer 下载源码;

如下所示:

解压后:

然后使用chrome开发模式即可安装了:

chrome 访问:

打开开发者模式,选择加载已解压的扩展程序就行啦。选择刚刚下载的github文件所在的位置,即可以添加。添加上就能加载使用插件了~

你会发现出现了:

在右上角。

最后,程序完美运行,祝您使用愉快!!!

去玩耍了,有啥问题,还请您留言~谢谢大家的支持~~



保持更新,转载请注明出处。如果软件或博客有帮到您,还请您给个小的star 。谢谢您了~https://github.com/yaowenxu/Hot-Search-Killer

原文地址:https://www.cnblogs.com/xuyaowen/p/HotSearchkiller.html

时间: 2024-10-28 11:31:12

Chrome 百度搜索热点过滤插件 - 开源软件的相关文章

屏蔽百度搜索热点

屏蔽baidu右边栏垃圾信息 方法 谷歌浏览器使用adblock plus插件,过滤列表中添加: 屏蔽搜索热点 www.baidu.com##div[tpl="right_toplist"] 屏蔽右侧内容 www.baidu.com###content_right 当然,防止以后其他问题的最好办法是换个良心的搜索引擎,必应这方面做得不错. 原文地址:https://www.cnblogs.com/zjfjava/p/9201776.html

跟我一起屏蔽百度搜索页面右侧的内容

苦恼百度搜索热点等冗杂信息很久了,然后今天下定决心解决这个问题了. 第一步:搜索,并安装插件Adblock Plus 第二步:使用拦截器 1.打开拦截器 2.具体使用 点击这一块 添加 原文地址:https://www.cnblogs.com/smart-girl/p/11058774.html

开源软件--软件业的标准件

题记:这是一篇旧文,最早写于2012年,当时只是在公司内部发表,与同事讨论了下.现在与大家分享. 开源软件之我见 2012-11-20 开源软件,是促进软件行业发展的一个重要组织,对于开源软件,我是这样认识的. 为了更好的表达,我来引入一个名词:标准件. 对于这个名词,机械行业的人员非常的熟悉,因为机械领域有非常多的标准件.下面我们看下机械标准件的定义: 标准件是指结构.尺寸.画法.标记等各个方面已经完全标准化,并由专业厂生产的常用的零(部)件,如螺纹件.键.销.滚动轴承等等. 广义包括标准化的

Html 小插件5 百度搜索代码2

网页添加百度搜索框代码大全 ★ 用法:在下面选择合适的样式,复制代码到网页中相应位置粘贴即可. ★ 样式一(200×30)代码: <iframe id="baiduframe" marginwidth="0" marginheight="0" scrolling="no"  framespacing="0" vspace="0" hspace="0" frame

人机交互设计之百度搜索软件评价

目前所使用的最多的也觉得最方便的就是百度搜索了,下面是我对这款使用多年的软件的评价. 1.用户界面方面: 界面简洁容易操作,我们的外教老师也会使用百度搜索.上设有糯米,新闻,hao123,地图,贴吧等网站的超链接,这些包含了衣食住行和娱乐等项目,使用户用起来非常方便,还有登录和设置按钮,用户登录之后可以根据自己的喜好进行个性化设置,使用起来更方便和顺手.下设二维码,可以方便下载百度搜索和百度糯米手机APP,另外还有上传照片的功能.总体来说界面简单易操作,适合广大年龄层和文化层的用户使用,我觉得这

2015 年度新增开源软件排名TOP100

本榜单包含 2015 年开源中国新收录的 5977 款开源软件中,根据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中或许可以了解到最新业界的趋势. 1.SwitchyOmega 项目简介:SwitchyOmega 是 SwitchySharp 的新版本.这是一个 Chrome 浏览器用来切换不同代理的插件.SwitchyOmega 初次安装时会检查是否存在 SwitchySharp ,如果有的话则会自动升级设置,无须手动配置.如果您使用的是非谷歌应用商店版,或者无法自动升级

100款开源软件

不知道这些你就OUT了!100款开源软件 好的软件可以极大提高工作效率,完成一些不可能完成工作.然而我们也常常为选择哪款软件而头疼,本次为大家推出的100款软件都是经过整理分类的,而且最重要的是100款软件都是开源免费且使用于Linux环境下,大部分都可以直接从官网上下载使用.如果你完全没有接触过以下我介绍的这100款软件,我只能说一句你OUT了! 图:100款软件分类图 接下来将要介绍的100款开源应用程序,是我花了很多时间为大家整理的,这些软件对大家来说是很有用的.我希望通过这100款软件告

2014 年最热门的国人开发开源软件 TOP 100

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是开源不可忽视的力量. 而我们这个榜单也是从这些国人开发.主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问.收藏.下载等多个角度,从而得出前 100 名最受欢迎的开源软件.我们所评选出来的软件并非同类型,尽管放在一起不是很科学,但我们仍希望通过我们的视角让大家对国内一些

2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是开源不可忽视的力量. 而我们这个榜单也是从这些国人开发.主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问.收藏.下载等多个角度,从而得出前 100 名最受欢迎的开源软件.我们所评选出来的软件并非同类型,尽管放在一起不是很科学,但我们仍希望通过我们的视角让大家对国内一些