CSDN文章一键打印、输出PDF(自动阅读全文、全清爽模式),去广告模式

发布时间 2023-03-22 21:14:22作者: 小小仓鼠

参考连接:https://blog.csdn.net/p1279030826/article/details/106602341

一、功能及使用方法
使用方法:按“F12”进入开发者工具,将以下js复制到 console,回车即可一键打印。

功能:

1、自动“展开阅读全文”
2、删除顶栏、侧栏、相关文章展示、浏览信息、广告、点赞等多余信息。真正的全清爽模式。
3、自动输出打印预览
4、自动缩放打印页面、避免页边缘内容被裁剪。(2020/10/31 新增)
5、自动展开折叠的代码段(2022/8/8 新增)

 

 

 

二、两种方法获取

方法一:移除法

更新内容:增加 自动展开折叠的代码段 功能

注:如果发现打印预览的时候每一页顶部都有标题,请参照下面第三步去掉“页眉和页脚”的勾选

(function(){
    'use strict';
    var articleBox = $("div.article_content");
    articleBox.removeAttr("style");
    $(".hide-preCode-bt").parents(".author-pjw").show();
    $(".hide-preCode-bt").parents("pre").removeClass("set-code-hide");
    $(".hide-preCode-bt").parents(".hide-preCode-box").hide().remove();
    $("#btn-readmore").parent().remove();
    $("#side").remove();
    $(".csdn-side-toolbar, .template-box, .blog-footer-bottom, .left-toolbox, .toolbar-inside").remove();
    $(".comment-box, .recommend-box, .more-toolbox, .article-info-box, .column-group-item").remove();
    $("aside, .tool-box, .recommend-nps-box, .skill-tree-box").remove();
    $("main").css('display','content'); 
    $("main").css('float','left'); 
    $("#mainBox").width("100%");        
    document.getElementsByTagName('body')[0].style.zoom=0.8;
    window.print();
})();

方法二:HTML重新构建法(2020/10/31新增)

该方法与方法一功能一致,代码更加简洁,打印完自动还原网页,并且后续CSDN增加其他多余模块也不会有影响。

(function doPrint(){      
    'use strict';
    var articleBox = $("div.article_content");
    articleBox.removeAttr("style");
    var head_str = "";       
    var foot_str = "";   
    var older = document.body.innerHTML;       
    var title= document.getElementsByClassName('article-title-box')[0].innerHTML; 
    var main_body = document.getElementsByClassName('article_content')[0].innerHTML;
    document.body.innerHTML = head_str + title + main_body + foot_str;
    $("#mainBox").width("100%");
    document.getElementsByTagName('body')[0].style.zoom=0.8;     
    window.print();
    document.body.innerHTML = older;
    return false;
})();