WebToEpub 实战:如何把网页小说打包成可离线阅读的 EPUB
WebToEpub 实战如何把网页小说打包成可离线阅读的 EPUB【免费下载链接】WebToEpubA simple Chrome (and Firefox) Extension that converts Web Novels (and other web pages) into an EPUB.项目地址: https://gitcode.com/gh_mirrors/we/WebToEpubWebToEpub 是一个 Firefox 与 Chrome 浏览器扩展把在线小说、漫画和任意网页打包成标准 EPUB 电子书。它主要面向长期追更、需要离线阅读、或担心网站关站的读者也向开发者开放了解析器扩展点。安装后只需打开小说页面、点击工具栏图标全部章节、图片和封面就会被下载、清洗并压缩进一个 .epub 文件。 上手初体验从源码到第一本 EPUB不想编译的话直接去 Firefox Add-ons 商店或 Chrome Web Store 安装同名扩展即可装完就能用。这里走源码路线因为它对开发者和想要最新功能的用户更透明。git clone https://gitcode.com/gh_mirrors/we/WebToEpub cd WebToEpub npm install npm run lint执行完最后一条命令eslint/ 目录下会生成 WebToEpub0.0.0.x.xpiFirefox 版和 WebToEpub0.0.0.x.zipChrome 版同时完成一次代码检查。接下来把扩展加载进浏览器Firefox地址栏输入 about:debugging#/runtime/this-firefox点 Load Temporary Add-on选 xpi 文件Chrome打开 chrome://extensions勾选 Developer Mode点 Load unpacked extension选解压后的目录加载成功后随便打开一个小说页面点工具栏的 WebToEpub 图标。弹窗里会自动填入标题、作者、语言下方列出全部章节。点 Pack EPUB进度条走完后一个 epub 文件出现在下载目录——到这里最低成本的完整体验就跑通了。⚙️ 功能聚焦四个值得了解的核心能力422 个站点解析器打开页面即识别特性plugin/js/parsers/ 目录下有 422 个解析器文件每个对应一类网站从 Baka-Tsuki、FanFiction 到 Wuxiaworld、RoyalRoadreadme.md 的站点列表与之一一对应。ParserFactory.js 按域名匹配解析器匹配不到时按 URL 规则和页面结构打分再兜底到默认解析器。效果你不需要判断这个网站支不支持打开页面它自己会选。对你意味着什么主流小说站几乎都是开箱即用只有小众站点才需要额外配置。章节整理与元数据一本书一个文件特性解析器提取章节 URL 列表允许你勾选区间、增删条目书名、作者、语言从页面的 og:title、og:locale 等标签自动读取作者、语言、文件名都可以手动改。效果打包出来的 epub 自带目录、作者和语言信息封面图默认取正文第一张图也可手动指定 URL。对你意味着什么文件丢进 Calibre 后书名和目录都是对的不用再手动改元数据。图片下载与嵌入离线也看得见图特性ImageCollector.js 负责所有图片按 URL 和位图哈希去重正文中的图片逐一下载后写入 epub 内部的 Images 目录。效果epub 不依赖任何网络资源断网、换设备、原站删图都不影响阅读。对你意味着什么漫画站、插图类轻小说同样适用不只是纯文字。默认解析器给陌生站点留了后路特性列表里没有的网站会进入 Default Parser 模式界面提供四个输入框正文区 CSS 选择器、章节标题选择器、需要移除的元素选择器、测试用的章节 URL。配置按域名存进浏览器本地下次自动带出并带一个测试按钮先验证。效果用几个选择器就能教会扩展一个新站点不必写代码。对你意味着什么遇到没收录的站点先花两分钟配一下选择器多数情况就能出书。 实战场景我的一次完整打包我打开一部在 Wuxiaworld 连载的长篇小说主站页面点扩展图标。专用解析器把几百个章节全部列出来元数据自动填好我只在作者一栏确认了一下点 Pack EPUB。进度条慢慢爬升——它在按章节限速下载正文和图片默认最小间隔 500 毫秒、并发为 1这是刻意设计来避免触发反爬。十几分钟后下载文件夹里多了一个以书名命名的 epub。导入 Calibre目录、作者、语言、封面全齐。第二个场景更典型一个没被收录的小型翻译站。我打开任意一章扩展自动进入 Default Parser 模式我用浏览器检查元素找到正文容器把它的选择器填进内容区一栏填一个章节 URL 点测试预览正常后保存配置再回到章节列表打包。全程没有写过一行代码。 避坑指南五个常见问题与解法Firefox 临时扩展重启即失效。about:debugging 加载的扩展是临时的浏览器重启后要重新加载。日常使用建议装商店版源码版只在开发时用。个别章节报 403 或抓不到内容。扩展有 noContentToError403 选项处理空内容返回 403 的站点下载慢是限速策略别指望靠提高并发加速卡住时先检查网络再减少章节数量重试。整本书打包中途某章失败。勾选跳过抓取失败的章节后失败章节会以占位页形式写进 epub 并记录错误不会让整个打包中断事后可单独重抓。文件被存成 IllegalFileName.epub。说明文件名含 Windows 非法字符扩展会先弹错提示在偏好里开启自动移除非法字符它会清洗后正常保存。本地跑单元测试失败。npm test 会用 http-server 拉起 unitTest/Tests.html 在浏览器里跑 QUnit 测试如果不用 Node 直接开本地文件Chrome 需要加 --allow-file-access-from-files 参数启动否则部分请求会被拦截。适合经常追更网页小说、想把整本书存进本地书库的读者代码与说明可直接查看仓库内的 readme.md 和 unitTest/Tests.html。【免费下载链接】WebToEpubA simple Chrome (and Firefox) Extension that converts Web Novels (and other web pages) into an EPUB.项目地址: https://gitcode.com/gh_mirrors/we/WebToEpub创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考