资讯详情

资讯详情

建站行业动态 · 设计趋势 · 数字化升级干货

番茄小说下载器实战指南:三分钟上手到多平台部署全解

番茄小说下载器实战指南:三分钟上手到多平台部署全解 番茄小说下载器实战指南三分钟上手到多平台部署全解【免费下载链接】fanqienovel-downloader下载番茄小说项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader断网追更白忙一场fanqienovel-downloader番茄小说下载器就是干这个的输入一个小说 id 或链接整本书被抓到本地还能转成 TXT、EPUB一种通用电子书格式等多种格式离线随便读。 三分钟跑起来想最快看到结果直接跑 Web 版。三条命令的事# 克隆项目 git clone https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader cd fanqienovel-downloader# 安装全部 Python 依赖 pip install -r requirements.txt# 启动 Web 服务浏览器打开 http://localhost:12930 cd src python server.py打开网页后粘贴小说 id 或目录链接就能下载带进度条、支持排队批量下载下完还能直接在网页里在线阅读。注意一点v1.1.6 之前的版本因为接口失效已经用不了了装最新版即可。⚙️ 它是怎么干活的整个项目就三块分工很清晰下载引擎src/main.py里的NovelDownloader类管所有网络请求、HTML 解析、内容清洗Web 服务src/server.pyFlask 框架提供网页界面和 REST API用 SocketIO 把下载进度实时推送到浏览器配置中心Config数据类所有可调参数都收口在data/config.json改文件不用改代码下载一本完整书的主流程大致是这五步拿章节列表用小说 id 请求接口得到书名和全部章节 id并发抓正文起线程池默认 16 个线程并行下载每个请求之间加随机延迟、随机换 User-Agent浏览器身份标识降低被风控的概率解析清洗用 BeautifulSoup一个 HTML 解析库提取正文再按src/charset.json里的映射表处理特殊字符断点保护每下完几章就写一次 JSON 中间文件到data/bookstore/中断重跑时已下载的章节自动跳过按模式出文件根据save_mode生成整本 TXT、分章 TXT、EPUB、HTML 或 LaTeX其中 EPUB 会带上封面、作者和目录Cookie网站登录凭证失效时引擎会自动重新生成不用手动干预。️ 多环境安装实战三种常见环境各给一套命令直接复制就能验证。本地 Python 环境前面三分钟跑起来已经覆盖。建议先建虚拟环境再装依赖# 创建并激活虚拟环境再装依赖 python -m venv venv source venv/bin/activate # Windows 用 venv\Scripts\activate pip install -r requirements.txtDocker 容器适合放在 NAS、云服务器上长期挂着用。项目自带 Dockerfile 和docker-compose.yml# 构建镜像并在后台启动 docker compose up -d启动后同样访问http://localhost:12930。配置和数据分别存进fanqie_data、fanqie_downloads两个数据卷里升级镜像不丢书。想换保存目录改docker-compose.yml的 volumes 部分即可。手机 Termux 环境Android 手机上装 Termux一个 Linux 终端环境跑精简版src/ref_main.py就行。国内网络建议先换源# 更新并安装 Python 环境 pkg update pkg install python pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip install requests ebooklib tqdm beautifulsoup4lxml 在手机上编译经常报错按下面顺序处理# 解决 lxml 编译失败 apt install clang libxml2 libxslt CFLAGS-O0 pip install lxml然后python ref_main.py开跑。️ 关键参数与调优所有参数集中在data/config.json定义在src/main.py的Config类里核心就这几个参数含义默认值save_mode保存模式1 整本 TXT、2 分章 TXT、3 EPUB、4 HTML、5 LaTeX1xc并发下载线程数16delay每次请求的随机延迟范围单位毫秒[50, 150]kg/kgf段落首行缩进的字符数 / 用什么字符缩进0 / 全角空格space_mode空格处理halfwidth 半角 / fullwidth 全角halfwidthsave_path下载文件的保存目录项目内 novel_downloads调优的本质是在速度和稳定性之间找平衡按你的网络环境取个值网络环境xc建议delay建议家庭宽带8~12[50, 150]企业/机房网络16~24[30, 100]手机热点4~8[100, 300]被限流了就往大调delay、往小调xc别硬刚。另外注意改配置里的任何选项都会覆盖原值改砸了直接把config.json删掉重建默认配置。️ 常见坑与自救坑一报ProxyError: Unable to connect to proxy现象下载一开始就抛代理连接异常原因系统环境变量里残留了失效的代理地址解决清掉代理再跑# 清除代理环境变量后重试 unset http_proxy https_proxy python src/server.py坑二pip install lxml编译失败现象一堆 C 编译器报错原因lxml 含 C 扩展部分系统缺编译工具解决本地用CFLAGS-O0 pip install lxmlTermux 上按前面手机环境一节装 clang 和 libxml2坑三章节反复下载失败、内容返回空现象进度条走完但文件里缺章原因cookie 失效或平台接口变更解决先删data/cookie.json让程序重新生成还不行就升级到 v1.1.6 以上版本旧版接口已死坑四下载下来的中文乱码现象用某些工具打开 TXT 出现方块字原因文件本身是 UTF-8读它的工具选错了编码解决用支持 UTF-8 的编辑器打开或在代码里显式指定encodingutf-8 进阶玩法与二次集成Web 版暴露了一组 REST 接口脚本化批量操作很方便常用的几个在src/server.py里能直接查到# 用一行代码把某本书塞进下载队列 import requests requests.post(http://localhost:12930/api/queue/add/7143038691944959011)/api/search可以按关键词搜书/api/queue/status查队列进度串起来就是一个自己的追更机器人。想加新格式扩展点也很直白src/main.py顶部的SaveMode枚举加一个成员照着_save_single_txt的写法实现一个保存函数再在保存分支里接上它就行。整条链路下章 → 清洗 → 落盘都是现成的你只需要管最后一步。⚖️ 使用红线与社区说几句不好听但重要的这东西定位是学习和研究工具下载内容仅限个人阅读别商用、别二次传播控制频率和并发别把人家服务器打挂且用且珍惜项目是 AGPL-3.0 协议改代码分发时请遵守协议要求遇到问题先翻一遍 Issue 区很多坑前人都踩过。有想法就提 Issue 或直接提 PR作者对能复现的问题回复挺快的。最后新手装好依赖跑起 Web 版粘贴 id 下载格式选 EPUB 就够用了技术向从NovelDownloader读起把delay和xc当实验变量玩顺手用 API 写个自动追更脚本团队用户Docker 部署到一台常开的机器上数据卷挂好当个私人的书库存档站现在就去把书架上最想带走的那本书下载下来吧。【免费下载链接】fanqienovel-downloader下载番茄小说项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关资讯