追更的小说一夜下架这个免费开源小说下载器 3 分钟备份整个书单【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader你是否有过这种经历晚上刷到一本正上头的连载第二天再点开页面直接 404在起点订阅过的 VIP 章节某天连整本书都搜不到了一些冷门小众站的佳作更是说没就没连转载网站都找不到它存在的痕迹。想离线阅读、想永久保存心爱的故事又不想一章章手动复制今天要聊的这款免费开源小说下载器——novel-downloader正是为此而生。它是一个跑在浏览器里的油猴脚本支持国内外 100 小说网站一键把整本书抓成本地TXT 与 EPUB文件。从安装到第一次出片三分钟足够跑通。为什么劝你趁早备份三个真实痛点先把话说透这不是闲着没事囤书而是很多读者用教训换来的经验。连载说断就断平台调整、版权纠纷、作者删书一本追了几百万字的书可能一夜之间无影无踪。轻文轻小说当年整站关停无数作品跟着消失就是最典型的例子。付费不等于永久哪怕你订阅了全部 VIP 章节网站下架时依然不会给你留任何东西。小众书没人转热门书被笔趣阁等转载站抄得满天飞冷门好书却无人问津一旦原站消失就真的从互联网上蒸发了。这个项目本身是「404 小说文库」计划的一部分目标就是给这些质量不错、却不够热门、没人转载的作品留一条活路。在征得你同意的前提下脚本还会尝试把书籍详情页存档到互联网档案馆为被删除之后留一手。它到底是什么一个驻扎在网页里的搬书工novel-downloader 是典型的用户脚本靠 Tampermonkey、Violentmonkey 这类脚本管理器运行。安装之后你几乎感觉不到它的存在——直到你打开某本小说的目录页网页右上角会悄悄多出一个下载图标点一下它就开始干活了。下载完成后你会同时拿到 TXT 文档和 EPUB 文件。TXT 用记事本、手机阅读器随便开EPUB 则适合 Calibre 等专业工具转格式、做书库管理。全程不用写一行代码点按钮就行。三步完成安装全程不到三分钟第一步给浏览器装个脚本管理器。Tampermonkey 功能最全、用户最多想要轻量开源就选 ViolentmonkeyFirefox 老用户也可以用 Greasemonkey。第二步拿到脚本本体。你可以直接把构建好的bundle.user.js拖进脚本管理器完成安装也可以从源码自己构建git clone https://gitcode.com/gh_mirrors/no/novel-downloader cd novel-downloader yarn install yarn build构建完成后dist目录下的bundle.user.js就是最终产物。第三步找一本小说试手。打开任意受支持网站的目录页看到右上角出现下载图标点击等右下角进度条跑完两个文件就到手了。第一次下载这些细节先知道会播放无声音频脚本执行下载时会静音播放一段音频目的是防止浏览器判定页面闲置而休眠后台属于正常现象不是 bug。长书要有耐心几百上千章的小说抓取需要时间右下角进度条会实时反馈也可以按 F12 打开控制台看详细进度。中断可以重来下载中断后重新开始已完成的章节会被跳过相当于自带断点续传。付费章节有门槛VIP 章节要求你已登录且已购买否则会直接跳过这是对版权的尊重也是避免无谓失败。100 网站到底覆盖了哪些一张表看清支持列表很长挑几类代表性的平台类型代表网站值得注意的点国内主流平台起点中文网、晋江文学城、番茄小说、七猫中文网支持付费章节晋江/番茄需处理字体加密海外文学平台カクヨム、小説家になろう、pixiv、Lofter多语言、单页应用需按 F5 刷新触发图标免费转载网站笔趣阁系列、UU看书网、69书吧、西瓜书屋量大管饱部分站点有图片文字反爬特色文学社区息壤中文网、有毒小说网、废文网、长佩文学部分需登录或 Token长佩有下载限速每个站点在src/rules/下都有独立规则文件按目录结构分成了 onePage单页目录、twoPage分页目录、special特殊平台、biquge、mbtxt 等几大类适配情况一目了然。站点太刁钻三层解码硬啃反爬有些网站比如西瓜书屋会把文字直接替换成图片让人没法复制。这个项目专门为此设计了一套三级解码方案像查字典一样层层递进文件名映射先看图片文件名能不能直接对上文字——最快几乎零开销。哈希匹配文件名对不上就下载图片算哈希去匹配——速度也还行。OCR 识别前两招都失灵才动用光学字符识别硬读——最准但最慢用的是 PaddleOCR 中文识别模型首次使用需下载模型文件。至于晋江、番茄这类用自定义字体加密的站点脚本会自动下载字体文件并建立映射关系把乱码还原成正常文字。更硬核的是连「封闭式 Shadow DOM Cloudflare 反爬」这种组合拳也有应对方案——通过 iframe 真实导航绕过检测再在 iframe 内注入 attachShadow 劫持来穿透封闭的 shadow-root相关实现见src/lib/pierceShadow.ts。这些细节普通用户感知不到但恰好解释了为什么别人搞不定的站它能下。只想下部分章节一行筛选函数搞定整本太长、只想要特定内容时不用去设置里翻开关。按 F12 打开开发者工具在控制台定义一个chapterFilter函数即可// 只下载前 100 章 function chapterFilter(chapter) { return chapter.chapterNumber 100; } // 只下载第一卷 function chapterFilter(chapter) { return chapter.sectionNumber 1; } // 只下载章节名带番外的 function chapterFilter(chapter) { return chapter.chapterName.includes(番外); }想长期生效的话还可以写一个小用户脚本自动注入一次配置终身受用。输出排版不满意自定义保存参数改到满意为止默认生成的 TXT/EPUB 排版已经够用但如果你有强迫症saveOptions能让你逐项调整const saveOptions { // 把章节标题改成第x章 xxx的格式 getchapterName: (chapter) { if (chapter.chapterName) { return 第${chapter.chapterNumber}章 ${chapter.chapterName}; } return 第${chapter.chapterNumber}章; }, // 给正文段落加缩进、调行距 mainStyleText: p { text-indent: 2em; line-height: 1.6; }, }; window.saveOptions saveOptions;此外还能调整章节排序、删除 EPUB 里的空行、给 TXT 段落加空格前缀——总之导出文件的长相基本由你说了算。配合设置面板里的并行下载线程数、下载间隔、最大下载间隔三件套遇到反爬严格的站点也能自己微调抓取节奏。心仪的网站没适配照着模板十分钟加一个这也是这款小说下载器最大的底气扩展新站点非常轻。核心机制是继承BaseRuleClass实现bookParse解析目录和chapterParse解析章节正文两个方法然后在src/router/download.ts注册路由、在src/header.json补上匹配规则最后yarn run build出包。src/rules/onePage/template.ts这类模板文件把重复劳动压到了最低——大多数常规站点只需要声明书名、作者、目录选择器、正文清洗规则几十行代码就能交付一个新规则。项目采用 TypeScript webpack-userscript 工程化开发规则引擎与核心逻辑分离这也是它能支撑 100 站点还能持续迭代的原因。三个常见坑提前避雷长佩文学反爬较严每分钟约 6 章别同时开多个页面下载多本书。Lofter图片多的博客很吃内存有 800MB 限制建议用筛选函数分批下载装了广告拦截器可能影响脚本运行。ESJ 的 EPUB已知问题可按项目 issue 里给出的屏蔽 core.js 方案解决。如果遇到问题先在设置里开启调试模式下载生成的 zip 里有debug.log日志带上日志去项目 issue 区按模板反馈问题解决效率会高很多。想交流的读者也可以加入项目的 Matrix 空间和 Telegram 群组。写在最后说句实在话备份小说这件事最大的成本不是工具而是来得及。一本好书值得被好好保存而这个小说下载器就是你手里现成的那把钥匙——免费、开源、100 站点开箱即用。现在就花三分钟装好它打开你正在追更的那本书点一下右上角的下载图标。阅读是习惯保存是责任——别等 404 了才后悔没备份。【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考