最新!谷歌浏览器去除CSDN广告插件

清除原理

利用JSDOM操作获得广告节点,然后使用remove()方法或者修改display:none清除节点。

代码示例:

//侧边栏第一个广告
document.getElementsByClassName("csdn-tracking-statistics mb8 box-shadow")[0].remove();
//侧边栏第二个广告
document.getElementById("footerRightAds").remove();
//评论栏上方广告
document.getElementById("dmp_ad_58").remove();
//推荐文章中穿插的广告
function clean(){
	var ads = document.getElementsByClassName("recommend-item-box recommend-recommend-box");
	for(var i =0; i < ads.length; i++){
		ads[i].style.display="none";
	}
}
clean();

插件下载:ADcleaner CSDN下载

插件使用

1.在浏览器中找到插件管理:
最新!谷歌浏览器去除CSDN广告插件_第1张图片
网址进入:chrome://extensions/

2.找到本地插件解压后文件夹并加载:
最新!谷歌浏览器去除CSDN广告插件_第2张图片
最新!谷歌浏览器去除CSDN广告插件_第3张图片

插件编写

如果你想要编写一个简单的谷歌插件,有必要了解一下基础知识:关于谷歌浏览器插件开发
本文中的插件包含两个文件:manifest.jsoncleaner.js

1.manifest.json文件

{
	"manifest_version": 2,
	"name":"CSDN广告清除",
	"version":"1.0",
	"description":"清除博客中的广告",
	"browser_action": 
	{
		"default_icon":"images/shield.png",
		"default_title": "这是CSDN广告屏蔽插件"
	},
	"content_scripts": [
		{
		      "matches": ["https://blog.csdn.net/*"],
		      "js": ["cleaner.js"]
		}
	]
}

2.cleaner.js文件

document.getElementsByClassName("csdn-tracking-statistics mb8 box-shadow")[0].remove();
document.getElementById("footerRightAds").remove();
document.getElementById("dmp_ad_58").remove();
function clean(){
var ads = document.getElementsByClassName("recommend-item-box recommend-recommend-box");
for(var i =0; i < ads.length; i++){
ads[i].style.display="none";
}
}
clean();

问题更新

如果插件无效,通过浏览器的开发这界面找到广告所在的DOM节点,修改cleaner.js的部分代码,刷新即可。

2020.8.9

左侧搜索框下的广告拦截失效,cleaner.js更改代码如下:

document.getElementsByClassName("box-shadow mb8")[0].remove();		//改正
document.getElementById("footerRightAds").remove();
document.getElementById("dmp_ad_58").remove();
function clean(){
var ads = document.getElementsByClassName("recommend-item-box recommend-recommend-box");
for(var i =0; i < ads.length; i++){
ads[i].style.display="none";
}
}
clean();

百度网盘资源链接:
链接:https://pan.baidu.com/s/1-XbUyoIVyU1bZ2TROyFTjw
提取码:9jam

你可能感兴趣的:(博客写作)