ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

番茄小说离线下载工具完整指南:三分钟把整本书变成你的本地资产

番茄小说离线下载工具完整指南:三分钟把整本书变成你的本地资产

番茄小说离线下载工具完整指南:三分钟把整本书变成你的本地资产

【免费下载链接】fanqienovel-downloader下载番茄小说项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader

还在担心追的小说突然下架、高铁隧道里加载不出下一页?开源项目 fanqienovel-downloader(番茄小说离线下载工具)用 Python 实现了整本小说的抓取与保存,只需一个链接或一串书籍 ID,就能把整本书下载到本地,支持 TXT、EPUB、HTML 等五种导出格式。这篇文章从"你为什么会需要它"讲起,带你走完安装、配置、排错和进阶玩法的全过程。

书架上的书突然没了?先把整本书搬回本地

某个深夜,你想起追了三个月的连载还没看,打开 App 却发现书架上空空如也——下架了,连个通知都没有。类似的场景还有很多:地铁进隧道,下一页加载了三十秒;换了个新平板,之前看的书全要重新找。这些问题的根源只有一个:你的阅读内容不在你手里,而在别人的服务器上。

fanqienovel-downloader 解决的正是这个痛点。它把在线阅读变成本地资产:网断了能看、书下架了还在、换设备不重下。你只需要拿到小说的目录页链接或书籍 ID,回车之后,程序会自动识别章节结构,把正文逐章抓取到本地。一份文件,手机、平板、电纸书、电脑各自认领一份,从此阅读这件事不再受平台和网络摆布。

它还远远不止"一次性下载"。程序内置更新检测,读取record.json里记录过的书籍 ID,就能自动对比并补抓新增章节——追连载小说时每天跑一次即可;关键词搜索、多本书批量排队下载也都是现成功能。

一个链接换回整本书:下载器内部是怎么跑的

用大白话说,它的工作流程可以拆成三步:

  1. 拿目录:根据你给的链接或 ID,抓取小说目录页,解析出全部章节的标题和 ID。
  2. 抓正文:模拟浏览器请求每个章节页面,把正文内容清洗出来,按顺序存放。
  3. 按格式落盘:把整理好的章节内容按你选定的保存方式写入本地文件。

为了不让高频请求触发网站限制,程序内置了一套随机化机制:请求头会在多套常见浏览器 UA 中随机挑选,每次请求之间还会按设定延时随机停顿,并用多线程并发加速。Cookie 也会自动获取、自动失效检测、自动续期,这些细节你完全不用操心。

当前版本(v1.1.14)支持五种保存方式,对应不同阅读习惯:

序号保存方式适合谁
1整本保存(单文件 TXT)追求简单,一个文件装下全书
2分章保存(每章一个 TXT)需要按章节整理、批注的用户
3EPUB 电子书格式Kindle、微信读书等阅读器用户
4HTML 格式浏览器直接打开即读,样式友好
5LaTeX 格式排版控、需要二次编辑整理的玩家

日常手机阅读用 EPUB 体验最好;存储空间紧张时退回 TXT,体积最小;需要后续做内容处理再考虑分章与 LaTeX。这些选项可以在设置中随时切换,无需安装额外转换工具。

三分钟跑通第一个下载任务:三种上手方式任选

图形界面版:一行命令启动下载服务

这是对新手最友好的入口。克隆项目并安装依赖后,进入src目录运行服务即可:

git clone https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader cd fanqienovel-downloader pip install -r requirements.txt cd src python server.py

浏览器打开http://localhost:12930,你会看到一个简洁的管理界面:按 ID 下载、按书名搜索、更新已下载小说、把多本书加入队列批量处理,进度条实时刷新,还内置了在线阅读器。因为 Web 版下载完成后直接把文件交给你,它完全可以部署在远程服务器或容器里,随时调用。

命令行版:六个数字走天下

偏好键盘操作的话,进入src目录运行python main.py,交互菜单只认六个数字:

  1. 输入 ID 或链接——立即下载单本书
  2. 输入 1——读取record.json更新已下载书籍
  3. 输入 2——关键词搜索
  4. 输入 3——批量下载多本书
  5. 输入 4——设置段首占位符、下载延时、保存路径、保存方式、线程数
  6. 输入 5——备份小说文件与下载配置,输入 6 退出程序

每层选择都有中文提示,跟着提示走即可,几乎不需要看文档。

Docker 版:服务器上长期服役

想在 NAS 或云服务器上常驻运行,用 Docker 最省心。克隆项目后,在项目根目录执行:

docker compose up -d

构建完成后访问http://localhost:12930。下载的小说和个人数据分别存放在名为fanqie_datafanqie_downloads的 Docker 卷中,容器销毁数据不丢;想改存储位置,编辑docker-compose.yml里的卷映射即可。镜像默认带 1G 内存上限,避免长期运行挤占主机资源。

想读得更舒服:几个值得调的参数

src/main.py中的Config定义了几个关键参数,修改后会保存在config.json中:

参数默认值含义
delay[50, 150]章节请求间隔(毫秒),网络差可调大
xc16并发下载线程数,过高易触发限制
save_mode1保存方式,对应上文五种格式
save_path默认下载目录小说保存位置

网络状况良好时,可以适当降低延时、把线程数提到 24 左右;手机端运行则建议调低线程数,避免设备过热。

最常见的三个报错与修复,新手少走弯路

1. 旧版本直接失效

v1.1.5 及以下版本因网站 API 变动已无法使用,务必使用 v1.1.6 及以上版本。如果你下载到的包是老版本,先更新再谈其他。

2. 代理导致的连接失败

如果报ProxyError/MaxRetryError,多半是系统代理或加速器拦截了请求。关闭代理、检查网络后重试即可,这是环境问题,不是程序问题。

3. 设置会被整体覆盖

修改设置中的任意一项都会覆盖原配置文件,改前先看清楚。想恢复默认,直接删除config.json重启程序。另外提醒一句:老版本 Python(3.8 及以下)环境下,进入src目录后需删除原main.py,并把main2.py改名为main.py再运行。

还能怎么玩:手机离线、批量收藏与周边工具接力

手机端离线配置三步走

在 Android 上装好 Termux 后,安装依赖即可跑起命令行版(运行的是ref_main.py):

pip install requests ebooklib tqdm beautifulsoup4

注意先把ref_main.py里的 tkinter 导入删掉;若安装 lxml 编译报错,改用CFLAGS="-O0" pip install lxml重装。之后运行python ref_main.py就能在手机上直接下载整本书,通勤路上离线阅读完全够用。

批处理脚本批量收藏

对整批书籍,可以写一段简单的循环脚本,逐本调用下载命令:

novel_ids=("7143038691944959011" "7123456789012345678") for id in "${novel_ids[@]}" do echo "开始下载:$id" python main.py <<< "$id" sleep 2 done

周边工具接力

项目还配套了几个实用小工具:用于检测番茄小说网页结构变化的检测程序、在已下载小说中做全文搜索的搜索工具、按文件大小切分超长小说的分割工具。下载、搜索、分卷三步串联,就能搭建一套完整的个人小说管理流水线,相关说明集中在项目根目录的README.mdphone.md中,按需查阅即可。

写在最后:边界与下一步

说到底,这个工具的价值不在"爬取"本身,而在于把阅读的主动权交还给你:不受信号摆布、不惧内容下架、不被单一设备绑架。项目遵循 AGPL-3.0 协议开源,由 Yck、Yqy、Lingo 三位开发者维护,也欢迎你在 Issues 里反馈问题或提出建议。

动手之前记得守住边界:仅用于个人学习、研究与离线阅读,不要高频抓取、不要商用传播,尊重作者版权。现在就按上面的步骤跑通第一本书吧——三分钟之后,你的专属离线阅读资料库就正式开张了。遇到问题可以到项目 Issues 交流,或加入交流群 428582738 与开发者和其他用户一起讨论。

【免费下载链接】fanqienovel-downloader下载番茄小说项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader

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

返回列表