js脚本之删除百度搜索的广告

先安装tampermoney什么的。

百度搜索为许多网站做广告从而获取利益,但是这些广告实在没有真实水平,所以想方设法地要去掉。听说tampermonkey可以跑js脚本,就写了一个去广告。
现在百度搜索也黑了,动态加载广告,所以只能动态去除广告。广告分为四种,定义广告为有 广告标签。
示例:
js脚本之删除百度搜索的广告_第1张图片
四处广告分别为顶部,中部,底部,右侧。
本想用id来去广告[“3001”,“3002”…],但是因为动态加载,所以去掉后出现一些非分辨型id,此法不通。
广告有右下角广告标签。是span。所以使用

var ad=document.getElementsByTagName(‘span’);

实际上ad是一个数组。所以要用下标访问。

ad[n].innerText===“广告”;

源码如下:

// ==UserScript==
// @name         删除百度搜索上的广告
// @namespace    fxxxysh
// @version      1.1.0
// @description  删除百度搜索上的所有广告
// @author       fxxxysh
// @include       *baidu.com*
// @copyright    copyright©2020 fxxxysh writer:[email protected]
// @grant       GM_registerMenuCommand
// @grant       GM_setValue
// @grant       GM_getValue
// ==/UserScript==


function delete_ad()
{
    var ad=document.getElementsByTagName("span");//标签
    var len=ad.length;//检查长度
    while(len !== 0)//从后往前推
    {
        len--;//下标从0不从1开始
        if(ad[len].innerText==="广告")//标签是否满足广告条件
        {
            var use=ad[len];//以下判定广告范围
            while(use.parentElement.id==="")//没有id
            {
                use=use.parentElement;//父节点
            }
            use.parentElement.innerHTML="";//删除节点
        }
    }
}
var t1=window.setInterval(delete_ad,1000);//反动态

安装请到greasyfork上安装。

你可能感兴趣的:(javascript,广告,百度)