拯救你的数字书库:novel-downloader小说下载器完整使用指南
拯救你的数字书库:novel-downloader小说下载器完整使用指南
【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader
你是否经历过这样的场景?深夜追更的小说突然404,付费购买的章节莫名消失,或者网站改版导致收藏夹里的作品集体蒸发。在这个内容可能随时消失的互联网时代,novel-downloader为你提供了一个强大的解决方案——这是一款开源、免费、可扩展的小说下载器,支持从100多个小说网站批量下载内容,并转换为TXT和EPUB格式,让你真正拥有自己的数字图书馆。
为什么你需要一个小说下载器?
在当前的网络环境中,小说内容面临着多重风险:网站关闭、内容下架、网络不稳定等问题时常困扰着读者。特别是对于付费章节,一旦网站出现问题,你购买的内容就可能无法访问。此外,许多读者需要在通勤路上、信号不佳的环境下阅读,在线访问变得困难。
传统的手动复制粘贴方式效率低下,无法处理大量章节,且容易丢失格式。而novel-downloader通过自动化流程解决了这些问题:
- 批量下载:自动识别并下载整本小说的所有章节
- 格式转换:一键生成TXT和EPUB两种格式
- 内容净化:自动清理广告和无关元素
- 离线保存:让你在任何设备、任何时间都能阅读
核心优势:novel-downloader的独特能力
智能识别与批量抓取
当你访问支持的小说网站时,novel-downloader会自动分析页面结构,找到章节列表和正文内容。右上角的下载图标就是你的操作入口。点击后,脚本会按照章节顺序智能分批下载所有内容。
novel-downloader的批量下载界面,展示从小说网站提取章节信息的全过程
多格式输出支持
脚本下载完成后会自动生成两个文件:
- TXT文档:纯文本格式,适合快速阅读和文本处理
- EPUB文件:标准电子书格式,支持目录导航和图文混排
novel-downloader生成的TXT格式文件,在文本编辑器中清晰可读
特殊网站处理能力
面对各种技术限制,novel-downloader提供了专业解决方案:
| 技术挑战 | novel-downloader解决方案 | 适用网站示例 |
|---|---|---|
| 图片文字 | 三级解码方案:文件名映射→哈希匹配→OCR识别 | 西瓜书屋等 |
| 字体加密 | 自动下载字体文件并建立映射关系 | 晋江文学城等 |
| 付费章节 | 使用登录状态访问已购买内容 | 起点、晋江等 |
| 反爬机制 | 智能调整下载频率和并行线程 | 长佩文学等 |
图文内容完整保存
对于包含图片的小说,novel-downloader能够完整保留图文内容:
novel-downloader处理含图片小说的效果,图片与文字完美整合
实战应用:从安装到高级技巧
快速开始速查表
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | 安装脚本管理器 | 推荐Tampermonkey、Violentmonkey |
| 2 | 安装novel-downloader | 访问项目页面获取脚本 |
| 3 | 访问小说网站 | 打开支持的小说目录页 |
| 4 | 点击下载图标 | 右上角出现下载按钮 |
| 5 | 等待下载完成 | 查看右下角进度条 |
| 6 | 获取文件 | 自动下载TXT和EPUB格式 |
安装步骤详解
第一步:安装脚本管理器novel-downloader是一个油猴脚本,需要先在浏览器中安装脚本管理器。推荐使用以下工具之一:
- Tampermonkey:功能最全面,更新最及时
- Violentmonkey:开源免费,轻量级选择
第二步:获取并安装脚本你可以通过两种方式获取脚本:
方法一:直接安装访问项目页面,点击安装链接即可自动安装。
方法二:本地构建如果你需要自定义功能或开发新规则,可以克隆源码自行构建:
git clone https://gitcode.com/gh_mirrors/no/novel-downloader cd novel-downloader yarn install yarn build构建完成后,在dist目录中找到bundle.user.js文件,这就是可以直接安装的脚本。
第三步:开始使用安装脚本后,访问任何支持的小说网站。当你打开小说目录页时,网页右上角会出现下载图标。点击图标,脚本就会开始工作:
- 右下角会显示下载进度条
- 按下F12可以查看详细状态和控制台日志
- 下载完成后自动保存文件到本地
下载后的小说内容预览,格式整洁,阅读体验良好
个性化定制技巧
自定义章节筛选
如果你只想下载小说的特定部分,可以在开始下载前定义chapterFilter函数:
// 只下载前50章 function chapterFilter(chapter) { return chapter.chapterNumber <= 50; } // 只下载包含特定关键词的章节 function chapterFilter(chapter) { return chapter.chapterName.includes("番外"); }格式自定义配置
通过saveOptions对象,你可以完全控制输出格式:
const saveOptions = { // 自定义章节标题格式 getchapterName: (chapter) => { if (chapter.chapterName) { return `第${chapter.chapterNumber}章 ${chapter.chapterName}`; } return `第${chapter.chapterNumber}章`; }, // 自定义CSS样式 mainStyleText: `p { text-indent: 2em; line-height: 1.6; margin-bottom: 1em; }`, // TXT文件段落缩进 genChapterText: (chapterName, contentText) => { contentText = contentText .split("\n") .map((line) => { if (line.trim() === "") { return line; } else { return " " + line; } }) .join("\n"); return `## ${chapterName}\n\n${contentText}\n\n`; } }; window.saveOptions = saveOptions;下载参数优化
在设置面板中,你可以调整下载参数以适应不同网站的访问限制:
// 在设置中调整的参数 { parallelThreads: 3, // 并行下载线程数,建议1-5 downloadInterval: 1000, // 下载间隔(毫秒),避免触发反爬 maxInterval: 5000 // 最大间隔时间(毫秒) }高级玩法:解决特殊场景问题
常见问题解决方法
问题1:下载卡住或失败
- 解决方案:降低并行下载线程数,增加下载间隔时间
- 检查网络连接,确保网站可正常访问
- 查看控制台错误信息,确认具体问题
问题2:文件出现乱码
- 解决方案:启用调试模式查看详细错误信息
- 检查网站是否使用了特殊编码或字体
- 对于字体加密网站,可能需要手动配置字体映射
问题3:脚本在某些网站上不工作
- 确认该网站是否在支持列表中
- 检查网站页面结构是否更新
- 在项目issue页面提交反馈或自行开发规则
特殊网站登录配置
对于需要登录的付费网站,如晋江文学城,需要配置token:
// 创建自动注入token的脚本 // ==UserScript== // @name auto inject tokenOptions // @namespace http://tampermonkey.net/ // @version 0.1 // @description auto inject tokenOptions // @author You // @match *://*/* // @grant none // ==/UserScript== (function() { "use strict"; const tokenOptions = { Jjwxc: "your_token_here", // 晋江token Xrzww: { deviceIdentify: "your_device_id", Authorization: "Bearer your_auth_token" } }; window.tokenOptions = tokenOptions; })();生态扩展:支持网站与开发指南
支持网站分类
novel-downloader支持100多个小说网站,主要分为以下几类:
| 类别 | 特点 | 代表网站 |
|---|---|---|
| 主流平台 | 付费章节、字体加密处理 | 起点中文网、晋江文学城、七猫中文网 |
| 国外平台 | 多语言、特殊编码处理 | カクヨム(日本)、pixiv小说、Lofter |
| 转载网站 | 免费资源、海量内容 | 笔趣阁系列、UU看书网、和图书 |
| 小众平台 | 特色内容、特殊处理 | 息壤中文网、有毒小说网、独阅读 |
模块化架构设计
novel-downloader采用清晰的模块化架构,便于维护和扩展:
src/ ├── main/ # 核心类:Book、Chapter、Attachment ├── rules/ # 网站规则,按类型分类 │ ├── onePage/ # 单页式网站规则 │ ├── twoPage/ # 分页式网站规则 │ └── special/ # 特殊网站规则 ├── lib/ # 工具库和辅助函数 ├── save/ # 保存和导出模块 └── ui/ # 用户界面组件扩展开发指南
如果你发现某个网站不受支持,可以参考现有规则文件添加新规则:
- 在src/rules/目录下创建新的规则文件
- 继承
BaseRuleClass类,实现bookParse和chapterParse方法 - 在
router/download.ts中添加路由规则 - 在
header.json的match字段添加网站匹配规则 - 运行
yarn build编译测试
实用小贴士与最佳实践
快速上手指南
- 首次使用建议:先从简单的免费网站开始,熟悉下载流程
- 批量下载技巧:对于长篇小说,建议设置并行线程数为3-5,避免被封IP
- 格式选择建议:TXT适合快速阅读和搜索,EPUB适合在电子书阅读器上阅读
- 备份策略:定期备份下载的小说,建议同时保存TXT和EPUB两种格式
性能优化建议
- 内存管理:对于图片特别多的博客(如Lofter),注意内存使用量
- 下载速度:根据网站反爬策略调整下载间隔和并行线程数
- 网络环境:确保稳定的网络连接,避免下载中断
故障排除清单
- 下载按钮不显示:刷新页面,检查脚本是否已启用
- 下载进度卡住:检查网络连接,降低并行线程数
- 文件格式错误:检查浏览器设置,确保脚本有足够权限
- 乱码问题:启用调试模式,查看详细错误信息
尊重版权与合理使用
重要提醒:novel-downloader旨在帮助读者更好地管理和阅读已拥有的数字内容。请遵守以下原则:
- 仅下载已购买内容:对于付费章节,请确保已登录相应账户并购买了相关章节
- 尊重作者权益:不要将下载的内容用于商业用途或非法传播
- 支持正版阅读:在条件允许的情况下,优先支持正版平台
项目还集成了404小说文库项目的理念——保存那些可能从互联网上消失的优秀作品。对于无登录墙的小说网站,脚本会尝试将书籍详情页和目录页存档至互联网档案馆,为后人保留阅读的机会。
开始你的数字阅读之旅
novel-downloader不仅仅是一个下载工具,它是数字时代的图书管理员,是阅读爱好者的得力助手。无论你是想要收藏经典作品,还是需要离线阅读方便通勤,这款工具都能满足你的需求。
立即行动:
- 安装脚本管理器(Tampermonkey等)
- 获取novel-downloader脚本
- 访问你喜欢的小说网站
- 点击下载按钮,开始享受离线阅读的乐趣
如果你在使用的过程中遇到问题,或者有新的功能建议,欢迎在项目页面提交issue。如果你是开发者,也欢迎贡献代码,让这个工具支持更多网站,帮助更多读者保存他们心爱的作品。
在数字阅读的世界里,让每一本好作品都能陪伴你走过每一个美好时光。novel-downloader为你保驾护航,确保精彩永不消失。
novel-downloader处理的小说分卷结构,清晰展示章节组织
下载后的小说开篇内容,保持原始格式和排版
【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考