novel-downloader:拯救你的阅读时光,让喜爱的小说永不消失
【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader
你是否曾有过这样的经历?深夜追更的小说突然被网站下架,付费订阅的内容无法离线阅读,或是心爱的作品因为平台关闭而永远消失。在数字阅读时代,我们收藏的文字似乎总是那么脆弱。今天,我要向你介绍一个守护阅读时光的工具——novel-downloader,这个开源小说下载器能让你从超过100个小说网站轻松保存心爱的作品。
📚 当小说消失时,谁来守护你的阅读记忆?
想象一下,你花费数月追更的小说,某天打开网站却发现"404 Not Found";你付费购买的VIP章节,却无法在通勤时离线阅读;那些小众但优秀的作品,因为不够热门而从未被转载,就这样从互联网上彻底消失。novel-downloader正是为了解决这些痛点而生,它不仅是一个下载工具,更是数字时代的知识守护者。
novel-downloader正在解析小说网站并下载章节内容
🎯 5分钟快速上手:从安装到第一本离线小说
第一步:安装脚本管理器
novel-downloader是一个油猴脚本,你需要在浏览器中安装脚本管理器。推荐使用Tampermonkey(支持Chrome、Firefox、Edge)或Violentmonkey。安装管理器后,你就能运行各种用户脚本了。
第二步:获取并安装脚本
git clone https://gitcode.com/gh_mirrors/no/novel-downloader cd novel-downloader yarn install yarn build构建完成后,在dist目录中找到bundle.user.js文件,直接拖拽到脚本管理器即可完成安装。
第三步:开始你的第一次下载
访问支持的小说网站(如起点中文网、晋江文学城等),打开小说目录页,你会看到网页右上角出现一个下载图标。点击它,novel-downloader就会开始工作。下载过程中,页面右下角会显示进度条,你也可以按下F12打开开发者工具查看详细状态。
novel-downloader识别小说目录结构,准备开始下载
🔍 智能解析:novel-downloader如何理解各种网站结构?
这个下载器的核心在于其模块化的规则引擎。在src/rules/目录下,你会看到针对不同网站类型的解析规则:
- 单页模式:适用于章节列表在同一页面的网站,如起点、晋江等
- 多页模式:处理章节分页显示的情况
- 特殊处理:针对加密或反爬机制复杂的网站
每种网站都有对应的解析规则文件,例如src/rules/onePage/目录下的qidian.ts专门处理起点中文网,src/rules/special/目录下的jjwxc.ts处理晋江文学城的特殊加密。
🛡️ 三层防御:如何破解图片文字和字体加密?
图片文字智能识别
有些网站为了防爬虫,会将文字替换为图片。novel-downloader采用三级解码方案:
- 文件名映射:最快的方法,根据图片文件名直接匹配文字
- 哈希匹配:下载图片计算哈希值进行匹配
- OCR识别:使用PaddleOCR中文识别模型,准确但较慢
这种分层策略既保证了效率,又确保了识别的准确性。
字体加密自动处理
晋江文学城等网站使用自定义字体加密文字显示。脚本会自动下载字体文件并建立映射关系。如果遇到乱码问题,可以在设置中启用调试模式,按照提示信息提交字体匹配请求。
novel-downloader成功提取的章节正文内容,格式清晰整洁
📖 最佳配置方案:让下载体验更上一层楼
自定义章节筛选
如果你只想下载小说的特定部分,可以在下载前定义筛选函数:
// 只下载前50章 function chapterFilter(chapter) { return chapter.chapterNumber <= 50; } // 只下载包含特定关键词的章节 function chapterFilter(chapter) { return chapter.chapterName.includes("冒险"); }个性化输出格式
你可以完全控制生成文件的样式和格式:
const saveOptions = { // 自定义章节标题格式 getchapterName: (chapter) => { return `第${chapter.chapterNumber}章 ${chapter.chapterName || ""}`; }, // 自定义CSS样式 mainStyleText: `p { text-indent: 2em; line-height: 1.6; margin: 0.5em 0; }` };novel-downloader生成的本地文件,章节结构清晰,便于阅读
🚀 高级技巧:从普通用户到进阶玩家的升级之路
自动注入配置脚本
如果你总是使用相同的自定义设置,可以创建一个独立的用户脚本自动注入配置:
// ==UserScript== // @name Noveldownloader 自定义配置 // @namespace http://tampermonkey.net/ // @version 1.0 // @description 自动注入 novel-downloader 配置 // @author 你的名字 // @match *://*/* // @grant none // ==/UserScript== (function() { "use strict"; // 章节筛选 function chapterFilter(chapter) { return chapter.chapterNumber <= 100; } // 保存选项 const saveOptions = { getchapterName: (chapter) => { return `第${chapter.chapterNumber}章 ${chapter.chapterName || ""}`; } }; window.chapterFilter = chapterFilter; window.saveOptions = saveOptions; })();付费章节下载技巧
要下载付费章节,你需要:
- 登录相应网站账户
- 确认已购买相关付费章节
- 对于晋江文学城等需要特殊token的网站,按照项目文档配置token
⚠️ 避坑指南:常见问题与解决方案
下载按钮不显示?
- 确认当前网站是否在支持列表中
- 刷新页面重新加载脚本
- 检查脚本管理器是否正确安装并启用
下载过程中卡住?
- 降低并行下载线程数(在设置中调整)
- 检查网络连接是否稳定
- 查看控制台错误信息,可能需要等待网站反爬机制解除
下载的文件乱码?
- 启用调试模式生成日志
- 检查字体匹配是否正常
- 对于晋江等需要字体匹配的网站,按照提示提交字体匹配请求
novel-downloader能够处理包含图片的章节,保持图文混排效果
🌟 性能调优建议:让下载更快更稳定
- 网络环境:使用稳定的网络连接,避免在下载过程中断开
- 并行线程:调整并行下载线程数(默认3个),找到适合当前网站的最佳值
- 分批下载:对于超长篇小说,建议分卷或分批次下载
- 定期清理:清理浏览器缓存,保持脚本运行流畅
🔧 开发者扩展:为novel-downloader添加新网站支持
如果你想为项目添加对新网站的支持,可以按照以下步骤操作:
创建新规则文件
在src/rules/目录下创建新的规则文件:
import { BaseRuleClass } from "../lib/rule"; export default class NewSite extends BaseRuleClass { public siteName = "new-site"; public urlPattern = /https:\/\/www\.newsite\.com\/novel\/.+/; public async bookParse() { // 实现书籍信息提取逻辑 } public async chapterParse() { // 实现章节内容提取逻辑 } }注册新规则
在src/router/download.ts中添加新规则的选择逻辑,并在header.json文件的match字段中添加相应的URL模式。
测试与构建
yarn lint # 代码检查 yarn build # 构建脚本 yarn test # 运行测试📋 支持网站一览:你的阅读清单都在这里
novel-downloader支持超过100个小说网站,包括:
主流原创平台
- 起点中文网、起点女生网
- 晋江文学城、长佩文学、书耽
- 七猫中文网、番茄小说、息壤中文网
- 有毒小说网、独阅读、轻之文库轻小说
国外平台
- カクヨム(日本)、小説家になろう(日本)
- pixiv小说、Lofter
- Novel Up Plus、ESJ
转载网站
- 笔趣阁系列、UU看书网
- 和图书、书趣阁、星空中文
- 乐文小说网、腐书网
完整支持列表可在项目文档中查看,脚本持续更新中,更多网站正在不断添加。
🎁 立即开始你的离线阅读之旅
novel-downloader不仅仅是一个工具,它是一种态度——对知识尊重的态度,对阅读热爱的态度。在信息易逝的今天,它帮助我们保存那些珍贵的文字,让优质内容不会因为网站关闭或内容下架而彻底消失。
无论你是想要离线阅读方便通勤,还是想要收藏心爱的小说,或是作为技术爱好者想要研究网页解析技术,novel-downloader都能满足你的需求。它的开源特性意味着你可以自由定制、贡献代码,与全球开发者一起完善这个工具。
现在就安装novel-downloader,开始你的离线阅读之旅吧!如果你在使用过程中遇到问题或有新功能建议,欢迎到项目页面提交反馈,让我们一起为保存互联网上的优秀小说作品贡献力量。
温馨提示:请遵守相关法律法规和网站使用条款,仅下载你已获得授权的内容。支持正版,尊重原创,让创作者获得应有的回报。
【免费下载链接】novel-downloader一个可扩展的通用型小说下载器。项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考