CSDN版面越来越乱,最近还总是弹出红包雨和顶部巨大横幅,左侧也会随机出现学生认证弹窗。而且版面混乱难看,看起来非常费劲。

另外底下的推荐列表经常夹杂着CSDN文件下载的链接,下载文件又要付费,从来不会用CSDN的下载,只希望能在推荐列表里看看博客,所以顺便把底下推荐列表中的下载推荐链接也去掉了,只剩下博客的链接。

所以写了一个净化CSDN的油猴脚本,效果还可以。

CSDN博客默认打开效果:

使用脚本净化后的效果:

*0.5.1更新(2021-11-02):右侧边栏去除

*0.5.2更新(2022-07-03):顶栏左侧按钮错位修复

油猴(TamperMonkey)里创建一个新脚本,直接复制进去就能用。

// ==UserScript==
// @name CSDN净化
// @namespace http://tampermonkey.net/
// @version 0.5.2
// @description fuck you csdn!
// @author Sanders
// @match *://*.csdn.net/*
// @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant none
// ==/UserScript== (function() {
'use strict'; // 背景调成深色,看起来更舒适
$("body").css("background-color", "dimgray"); // 删除侧边栏热门文章
var hotArticle = document.getElementById("asideHotArticle");
if (hotArticle != null) {
hotArticle.remove();
} // 直接删除傻逼左侧边栏
const sideBar = document.getElementsByClassName("blog_container_aside")[0]
if (sideBar != null) {
sideBar.remove();
} // 删除右侧边栏
const rightSideBar = document.getElementById("rightAside");
if (rightSideBar != null) {
rightSideBar.remove();
} // 让文章居中全宽
var mainBox = document.querySelector('#mainBox>main');
if (mainBox != null) {
mainBox.style.width = '75%';
mainBox.style.float = "none";
mainBox.style.marginLeft = "12.5%";
// 调整图片比例
$("#content_views img").css("max-width", "65%");
$("#content_views img").css("margin-left", "22.5%");
} // 将底部的作者栏调小
var bottomBar = document.getElementsByClassName("left-toolbox")[0]
if (bottomBar != null) {
bottomBar.style.height = "10px";
} // 边栏移到底部去
// document.getElementsByClassName("blog_container_aside")[0].style.display = "contents" // 删除所有download的链接(仅适用于blog.csdn.net)
var downloads = document.getElementsByClassName("recommend-item-box type_download");
// 反着删才管用
for(var i=downloads.length - 1; i >= 0; i--){
if (downloads[i] != null) {
downloads[i].remove();
}
} // 删除所有download.csdn.net的链接
setTimeout(function() { var downloads2 = document.querySelectorAll("div[data-type=download]");
for(i=downloads2.length - 1; i >= 0; i--){
if (downloads2[i] != null) {
downloads2[i].remove();
}
} var allLinks = document.getElementsByTagName("a");
var downloadReg = RegExp(/download.csdn.net/);
for (i = allLinks.length - 1; i >= 0; i--) {
const link = allLinks[i].href;
if (link.match(downloadReg)) {
// 为了判断是不是导航栏的下载按钮,如果删了会导致导航栏错位,很蠢
if (allLinks[i].parentElement.title != "获取源码、文档、学习资源") {
allLinks[i].remove();
}
//allLinks[i].remove();
}
}
}, 1000); // 针对blink.csdn.net页面调整
// 调整版面
$(".blink-main-l").css("width", "70%");
$(".blink-main-l").css("margin-left", "15%");
$(".blink-main-l").css("margin-right", "0");
// 移除右边的个人栏
$(".blink-main-r").remove(); // 针对bbs.csdn.net页面调整
$(".user-right-floor").remove();
$(".detail-container").css("margin-left", "15%"); window.onload = function () { // 删除顶栏广告
var adTime = 10;
var adBar = setInterval(removeAdBar, 1000);
function removeAdBar() { var adBar = document.getElementsByClassName("toolbar-advert")[0];
if (adBar != null) {
adBar.remove();
clearInterval(adBar);
}
if (time == 10) {
clearInterval(adBar);
}
time++; } // 删除其他广告(针对CSDN主页)
$("[id^=kp_box]").remove();
$("[class*=advert-box]").remove(); // 会导致顶栏错位 // 删除学生认证
var highschool = document.getElementById("csdn-highschool-window");
if (highschool != null) {
highschool.remove();
} // 删除右下角的圆形广告
var toolbar = document.getElementsByClassName("csdn-side-toolbar")[0];
if (toolbar != null) {
toolbar.remove();
}
var logo_ad = document.getElementsByClassName("csdn-common-logo-advert")[0];
if (logo_ad != null) {
logo_ad.remove();
} // 删除Logo
var logo = document.getElementsByClassName("toolbar-logo")[0];
if (logo != null) {
logo.remove();
} // 顶部左侧按钮的 height=100% 会错位,移除这个属性就好了
var tool_bar = document.getElementsByClassName("toolbar-menus")[0];
if (tool_bar != null) {
tool_bar.style.height = "auto";
} // 删除vip弹窗广告
var vip = $(".mask")[0]
if (vip != null) {
vip.remove();
} // 删除红包雨
// 每0.5秒检测一次,持续检测4次,有时候网速问题加载会延时
var redTime = 0;
var redPocket = setInterval(deleteRedPocket, 500);
function deleteRedPocket() {
var redPocketLayer = document.getElementById("csdn-redpack");
if (redPocketLayer != null) {
redPocketLayer.remove();
clearInterval(redPocket);
}
if (redTime == 4) {
clearInterval(redPocket);
}
redTime++;
} // 删除会员组合券广告弹窗
var buysideTime = 0;
var buyside = setInterval(deleteBuyside, 500);
function deleteBuyside() {
var buysideLayer = document.getElementByClassName("csdn-buyside-entry-box")[0];
if (buysideLayer != null) {
buysideLayer.remove();
clearInterval(buyside);
}
if (redTime == 4) {
clearInterval(buyside);
}
buysideTime++;
} // 删除登录弹窗
// 每1秒检测一次,持续检测10次,有时候网速问题加载会延时
var time = 0;
var login = setInterval(deleteLogin, 1000); function deleteLogin() {
var loginWindow = document.getElementsByClassName('passport-login-container')[0];
if (loginWindow != null) {
loginWindow.remove();
clearInterval(login);
}
if (time == 10) {
clearInterval(login);
}
time++;
} };
})();

油猴CSDN净化脚本的更多相关文章

  1. [Chrome] 谷歌浏览器开启开发模式仍然无法安装油猴脚本

    右键 > 属性 > 起始位置 > 添加 --enable-easy-off-store-extension-install 谷歌浏览器无法安装油猴脚本:--enable-easy-o ...

  2. 自用chrome+油猴脚本,使用迅雷下载百度云大文件,一键离线下载

    油猴是有名的火狐浏览器插件(Greasemonkey),当然也有Chrome版本(tampermonkey),甚至IE.Safari.Opera都有……虽然这些插件是由不同的开发者开发出来的,界面也可 ...

  3. 油猴和EX-百度脚本 百度网盘下载

    pansoso.com 搜网盘 油猴和EX-百度脚本.zip https://aleikeji.pipipan.com/fs/845023-331102839

  4. 使用 Sublime 或其他编辑器调试 Tampermonkey 油猴脚本

    作者说由于 Chrome 安全限制,没办法调用外部编辑器调试,但提供了一个间接办法,那就是脚本中使用@require file:///引入本地文件的形式,具体的方法是 打开 chrome://exte ...

  5. [转帖]油猴脚本管理器 Tampermonkey v4.8 离线CRX安装包(谷歌浏览器版)

    https://www.52pojie.cn/thread-1010604-1-1.html 油猴脚本管理器 Tampermonkey v4.8 离线CRX安装包(谷歌浏览器版) 链接:https:/ ...

  6. Tampermonkey油猴脚本管理插件-最强浏览器插件的安装使用全攻略

      对于接触过谷歌浏览器插件的“玩家”们来说,应该没有人没听说过Tampermonkey用户脚本管理器,也就是中文所说的“油猴”这个chrome插件了. 油猴号称全商店最强的浏览器插件绝非浪得虚名,一 ...

  7. 浏览器插件之王-Tampermonkey(油猴脚本)

    大家电脑都在使用浏览器,相信大家对浏览器插件也不陌生,浏览器插件是安装在浏览器里面,对浏览器功能进行拓展的脚本,现在的主流浏览器都有各种各样的插件如图: 这些插件让我们的上网方便了许多,有去广告的插件 ...

  8. 网课应该这么刷(油猴Tampermonkey脚本自动刷课)

    懒人福利 首先有些人不想学怎么用脚本,满足你们,压缩包解压之后直接登录即可.戳我下载 脚本已经集成好了,登录即可刷课.章节测试还会自动答题呦,正确率高达97%呦. 油猴及脚本安装 油猴的脚本不知可以刷 ...

  9. 油猴脚本 之 网教通直播评论记录抓取 v2.0

    先放一个 <油猴脚本 之 网教通直播评论记录抓取>那篇文章的传送门 . 修复内容 将所有表情转为 [符号表情] 字样,而非删除: 修复被禁言用户读取异常,现在被禁言用户表示为 张三 [已禁 ...

  10. 【接单】找我付费定制Python工具软件或网站开发、Chrome浏览器插件、油猴脚本

    各位可付费找我定制Python工具软件或网站开发.Chrome插件.油猴脚本.自动化软件,可通过我做的软件来评判我的实力,一定要先和我沟通你的需求,做不了的我也不会接. 费用50元起,通过淘宝APP或 ...

随机推荐

  1. VS不能生成moc_XXX文件的问题解决

    环境:VS2010 + QT 4.8 问题:写好QT代码文件(XXX.h和XXX.cpp)后,发现不能像其它QT文件那样自动生成moc_XXX文件. 解决: 1.参考网文,将XXX.h文件的属性配置成 ...

  2. python 根据二维数组画出彩色图像

    方法:采用seaborn中的heatmap import seabornimport numpy as npimport pandas as pdimport matplotlib.pyplot as ...

  3. DIV CSS遮罩层(弹窗窗口)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. Hystrix-Dashboard可视化

    Hystrix-Dashboard可视化 1.新建子项目引pom.xml <dependencies> <!--hystrix dashboard--> <depende ...

  5. .net基础—委托和事件

    委托 委托是一种引用类型,表示对具有特定参数列表和返回类型的方法的引用. 在实例化委托时,可以将其实例与任何具有兼容签名和返回类型的方法相关联. 可以通过委托实例调用方法.可以将任何可访问类或结构中与 ...

  6. Vue3+vite+Echarts案例大屏可视化--千峰(推荐)

    https://www.bilibili.com/video/BV14u411D7qK?p=33&spm_id_from=pageDriver&vd_source=e2cfe74d93 ...

  7. .NET在单台Windows2008下百万TCP连接测试

    测试客户端: 客户端程序建立TCP连接,发送一条几个字节的数据. 虚拟机8台,PC机8台,服务器1台. 设置MaxUserPort=60000,有一台机没有设置约在1.5万左右.最后因为差一点到100 ...

  8. 使用骨架创建maven的web工程 maven工程servlet实例之间指定web资源包 实例之导入项目依赖的jar包 maven工程servlet实例之jar包冲突解决

     使用骨架创建maven的web工程 操作一样把勾进行勾选找到webapp选项 下一步创建就行 创建好会有显示 目录结构其余的都需要自己手动补齐 有小蓝点的才是一个web项目, 如果上面都正确的话没有 ...

  9. adb 工具-原⽣安卓解决WiFi⽹络受限以及修改NTP服务

    安装包下载地址:https://developer.android.google.cn/studio/releases/platform-tools 注: adb kill-server    //结 ...

  10. NifytGUI——ListBox控件

    ListBox控件的用法,创建一个xml,代码如下: <?xml version="1.0" encoding="UTF-8" standalone=&q ...