百余个站点小说一键离线下载:novel-downloader 脚本保姆级上手指南
2026/8/27 11:53:08 网站建设 项目流程

百余个站点小说一键离线下载:novel-downloader 脚本保姆级上手指南

【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader

深夜刷新页面,追了两年的小说突然变成"内容已删除",这种绝望相信很多读者都体会过。而通用型小说下载器 novel-downloader 的思路很直接:打开目录页点一下图标,它就自动解析整本书的章节结构,把离线可读的 TXT 和 EPUB 存进你的硬盘——书不再看平台的脸色。📚

小说下载器的最简安装步骤

全程不用写一行代码,三步走完:

  1. 装一个脚本管理器:Tampermonkey、Violentmonkey、Greasemonkey 三选一,浏览器扩展商店里都有;
  2. 添加本脚本:在管理器的"添加新脚本"流程里安装 novel-downloader;
  3. 确认生效:随便打开一个受支持站点的目录页,页面右上角出现下载图标,说明安装成功。

脚本支持的书籍目录页:页面右上角会出现下载入口,这是一键下载的起点

开发者捷径:从源码构建脚本

想体验未发布的新功能,或者打算给项目提代码,可以克隆源码自行构建:

git clone https://gitcode.com/gh_mirrors/no/novel-downloader cd novel-downloader yarn install yarn run build

构建完成后,把产物放进脚本管理器即可完成安装;如果希望边改代码边验证,运行yarn dev进入本地调试模式。

三步拿到第一本离线小说

装好之后,操作可以闭着眼完成:

  1. 打开想收藏作品的目录页
  2. 点右上角下载图标,脚本会并行解析整本书的章节;
  3. 结束后浏览器自动存下一个TXT和一个EPUB文件(另附章节源文件打包的 ZIP),打开即读。

上半部分是解析出的章节列表,下半部分是下载任务的实时执行日志,从解析到存盘一目了然

小贴士:下载过程中脚本会播放一段无声声音,这是为了不让浏览器把后台任务休眠,属于正常现象。进度可随时看右下角进度条。

小说下载器的能力全景

相比"复制粘贴 + 截图存档"的老办法,差距来自它的模块化设计:每个受支持的站点都对应一套独立解析规则,加站点就像往对应文件夹里放一个新文件。核心能力一览:

能力维度内容说明
脚本管理器Tampermonkey / Violentmonkey / Greasemonkey主流管理器均可运行
站点覆盖百余个站点涵盖国内原创、轻小说、海外站与转载资源站
输出格式TXT + EPUB(附 ZIP)TXT 用文本编辑器读,EPUB 用任意阅读器
付费章节需登录且已购买未购买的章节直接跳过,属有意设计
防爬解码图片化正文三层解码文件名映射 → 哈希映射 → OCR 识别,全自动
调试手段右下角进度条 + F12 控制台日志设置里开调试模式可得到更完整日志

进阶玩法:把下载器调成你的私人图书管理员

用筛选函数圈出想存的章节

解决什么问题:超长篇动辄上千章,全量下载慢、占空间,中途翻车还得重来。怎么开启:点运行按钮之前,按 F12 打开开发者工具,在window下定义chapterFilter函数。例如只存前 100 章:

function chapterFilter(chapter) { return chapter.chapterNumber <= 100; }

注意什么:也可以按卷(chapter.sectionNumber)或标题关键词圈选,但务必在开始下载前定义好。

用自定义保存参数改造输出样式

解决什么问题:默认章节标题不合口味、想改成"第x章 xxx"格式,或想删掉 EPUB 里的空行。怎么开启:同样在window下挂一个saveOptions对象,标题格式、段落样式都能动:

const saveOptions = { getchapterName: (chapter) => `第${chapter.chapterNumber}章 ${chapter.chapterName}` }; window.saveOptions = saveOptions;

注意什么:参数长期固定时,可以写成用户脚本自动注入,省去每次手工粘贴。

用完成回调自动收尾

解决什么问题:批量下载完懒得手动关标签页,或想触发自己的后续处理。怎么开启:定义customFinishCallback,文件生成后脚本会自动调用它:

window.customFinishCallback = function () { window.close(); };

注意什么:回调在 ZIP 文件生成之后执行,依赖"文件已落地"的时机。

三层解码,专治"图片化"正文

解决什么问题:个别站点(如西瓜书屋)把正文文字替换成图片,直接复制只得到一堆图片。怎么运作:无需手工干预——脚本先拿图片文件名匹配文字,不行再下载图片算哈希匹配,两者都失败才动用 PaddleOCR 的OCR 识别兜底。注意什么:OCR 模型首次使用会自动下载并缓存到本地,但识别并不保证 100% 准确。

下载后正文与插图一并保留,还原原站的混排阅读体验

避坑指南:五句实战经验

  1. 下载卡住且没生成任何文件→ 在设置里开调试模式,按 F12 看实时状态;已生成 ZIP 的话,先查里面的debug.log
  2. 下载后出现乱码或异常字符→ 多半是字体映射缺失(晋江文学城、番茄小说最常见),在日志里找[jjwxc-font][fanqie-font]开头的提示,按提示处理。
  3. 反爬严格的站点速度很慢→ 长佩文学每分钟约 6 章属站点限制,耐心等即可,别多开页面同时下多本。
  4. 图片多的站点内存吃紧→ 比如 Lofter 连插图一起下,脚本内存上限约 800MB,用筛选函数分次下载更稳。
  5. VIP 章节被跳过→ 这是有意设计:登录账号并确认已购买后才能下载。

常见疑问:新手最容易卡住的五个问题

Q:下载时脚本播放无声声音,正常吗?A:正常,作用是防止浏览器把后台任务休眠。进度看右下角进度条,细节看 F12 控制台。

Q:怎么判断一个站点支不支持?A:打开书籍目录页,右上角出现下载图标就支持;没出现则暂不支持,可去项目支持页提交 issue 提需求。

Q:想支持的新网站,能自己动手加吗?A:可以。项目是模块化的,在src/rules/下新增规则文件、实现解析方法并在路由登记即可;不会写代码也可直接提 issue 请求。

Q:下载速度偏慢怎么处理?A:先尝试把设置里的并行下载线程数提到 3~5;反爬严格的站点反而应降到 1~2 并加大下载间隔。

Q:下载完成后会生成哪些文件?A:TXT、EPUB 外加一个 ZIP。TXT 用记事本等软件阅读,EPUB 用阅读器打开,ZIP 可留档原始章节页面。

下载完成的 TXT 文件:卷、章结构完整保留,可直接阅读或二次编辑

开始搭建你的私人离线书库

打开浏览器,装好脚本管理器,按上面的步骤把最想留住的那本书带回本地——无论是建一座永不 404 的书库、把它当油猴脚本工程化的学习教材,还是为新站点写一条规则回馈项目,都从这一次点击下载开始。

合规提醒:请只下载已购买或合法获取的内容,尊重创作者劳动,避免给目标站点造成过大访问压力;工具的价值在于合理使用,让下载器做阅读体验的助手,而不是绕过正版的捷径。

【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询