EPUB / MOBI / PDF → TXT → Markdown → 多语言翻译 全流程,零 token 消耗
| 脚本 | 功能 | 依赖 |
|---|---|---|
epub-to-txt.py |
EPUB → TXT(单本) | 零依赖 |
epub-to-txt-batch.py |
EPUB → TXT(批量) | 零依赖 |
mobi-to-txt.py |
MOBI → TXT(单本) ⭐v3.2新增 | mobi(pip install mobi) |
mobi-to-txt-batch.py |
MOBI → TXT(批量) ⭐v3.2新增 | mobi(pip install mobi) |
pdf-to-txt.py |
PDF → TXT(单本) | clawpdf + PyMuPDF兜底 |
pdf-to-txt-batch.py |
PDF → TXT(批量) | clawpdf + PyMuPDF兜底 |
pdf-to-txt-ocr.py |
扫描/图片型 PDF → TXT(本地 OCR) ⭐新增 | RapidOCR(本地离线,含中文模型) |
txt-to-md.py |
TXT → Markdown(单本) | 零依赖 |
txt-to-md-batch.py |
TXT → Markdown(批量) | 零依赖 |
txt-translate.py |
TXT/MD 多语言翻译(单本)⭐新增 | argostranslate(本地离线) |
txt-translate-batch.py |
TXT/MD 多语言翻译(批量)⭐新增 | argostranslate(本地离线) |
generate-test-epub.py |
生成测试 EPUB | 零依赖 |
EPUB/PDF → TXT → 翻译(可选) → Markdown → AI润色(最少token)
↳ 脚本 ↳ 脚本 ↳ 本地模型 ↳ 零token ↳ 只做最后精修
为什么这样设计? - EPUB/PDF → TXT:用脚本处理,零 token - 翻译:Argos Translate 本地神经网络模型推理,零 token、完全离线 - TXT → Markdown:用脚本识别标题/章节/正文,零 token - AI 润色:只处理"人味"部分,少量 token,节省 90%
引擎:
1. Argos Translate(默认)——纯本地开源神经翻译,模型首次自动下载(en→zh 约 200MB),之后完全离线、零 token
2. translate-shell(备选,--engine trans)——需系统已装 trans 命令且联网
特性:
- ✅ 保留章节结构(=== 边框、── 小节、Markdown # 标题均不破坏,元数据行不翻译)
- ✅ 多语言:--from / --to 任意支持的语言对(en/zh/ja/ko/fr/de/es/ru/ar/pt...),无直连模型时自动经英语中转
- ✅ 双语对照:--bilingual 原文+译文交错输出
- ✅ 断点续传:翻译中断后重跑同一命令,自动从上次进度继续(进度存 .progress.json)
# 英文书 → 中文(最常用)
python3 txt-translate.py book.txt # 输出 book.zh.txt
python3 txt-translate.py book.txt 中文版.txt # 指定输出名
python3 txt-translate.py book.md --to zh # Markdown 也支持
# 其他语言
python3 txt-translate.py book.txt --from en --to ja # 英→日
python3 txt-translate.py book.txt --from ja --to zh # 日→中(经英语中转)
# 双语对照 / 批量
python3 txt-translate.py book.txt --bilingual
python3 txt-translate-batch.py ~/books_txt/ --from en --to zh
安装(一次性):
pip install argostranslate
# 首次翻译时自动下载对应语言模型,之后完全离线
典型场景:英文 EPUB → 中文 Markdown
python3 epub-to-txt.py english-book.epub /tmp/book.txt # Step 1: EPUB → TXT
python3 txt-translate.py /tmp/book.txt /tmp/book.zh.txt # Step 2: 本地翻译 → 中文
python3 txt-to-md.py /tmp/book.zh.txt /tmp/book.zh.md # Step 3: TXT → Markdown
性能参考:CPU 上约 1~3 段/秒,一本 300 页英文书约 30~60 分钟(后台跑即可,断点续传不怕中断)。 翻译质量说明:Argos 为开源离线模型,质量接近早期谷歌翻译,适合"通读理解";出版级质量可在译后让 AI 只润色关键章节(少量 token)。
python3 epub-to-txt.py input.epub [output.txt]
python3 epub-to-txt.py input.epub # 自动同名输出
pip install mobi # 一次性安装依赖
python3 mobi-to-txt.py input.mobi [output.txt] # 单本
python3 mobi-to-txt-batch.py ~/books/ # 批量
原理:MOBI → kindleunpack 解压(生成内嵌EPUB或Mobi7文件)→ 复用 EPUB 解析逻辑 → TXT 支持 K8 新版(生成EPUB)和 Mobi7 老版(直接生成 book.html),自动识别,零额外配置
python3 pdf-to-txt.py input.pdf [output.txt] # 文字型 PDF(含 PyMuPDF 兜底)
pip install rapidocr-onnxruntime pymupdf pillow # 一次性装好本地 OCR 引擎
python3 pdf-to-txt-ocr.py input.pdf [output.txt] # 默认 dpi=200,逐页 OCR
python3 pdf-to-txt-ocr.py input.pdf --dpi 300 --from-page 1 --to-page 5 # 高清/分段
引擎 RapidOCR(onnxruntime 推理,自带中文模型),完全离线、零 token。 适合出版社扫描书、影印本、无文字层的图片型 PDF。
python3 txt-to-md.py input.txt [output.md]
python3 txt-to-md.py "/path/中国REITs操作手册.txt" # 自动输出同名.md
python3 epub-to-txt-batch.py /path/to/books/ # EPUB批量
python3 mobi-to-txt-batch.py /path/to/books/ # MOBI批量
python3 txt-to-md-batch.py /path/to/txts/ # TXT批量
pip install mobi # 首次安装
python3 mobi-to-txt.py 巴菲特致股东的信.mobi /tmp/buffett.txt # Step 1: MOBI → TXT
python3 txt-to-md.py /tmp/buffett.txt /tmp/buffett.md # Step 2: TXT → Markdown
# Step 1: EPUB → TXT
python3 epub-to-txt.py 智能商业.epub /tmp/智能商业.txt
# Step 2: TXT → Markdown(自动识别章节)
python3 txt-to-md.py /tmp/智能商业.txt /tmp/智能商业.md
# Step 3: AI 润色(只润色,节省token)
# → 丢给 AI:"请润色这段文字,让它更有传播力"
# 批量 EPUB → TXT
python3 epub-to-txt-batch.py ~/books/
# 批量 TXT → Markdown
python3 txt-to-md-batch.py ~/books_txt/
# 验证结果
ls ~/books_txt/*.md | wc -l
| 原文本格式 | 转换结果 |
|---|---|
=== 书名 === |
# 书名(一级标题) |
作者:XXX |
*作者:XXX*(斜体) |
── 小节名 ── |
### 小节名(三级标题) |
| 普通正文 | 保持原样 |
| 多余空行 | 合并为单空行 |
pdf-to-txt-ocr.py(RapidOCR 本地中文 OCR,零 token)--dpi 300 提升)【第一章】):需要手动调整已成功转换的书籍: - 国企三资盘活(EPUB,33章,609KB) - 中国REITs操作手册(EPUB,67章,925KB → 917KB MD) - 智能商业、模型思维、水平思考、查理日记 等
epub-to-txt/
├── SKILL.md # 本文件
├── epub-to-txt.py # EPUB单本转TXT(零依赖)
├── epub-to-txt-batch.py # EPUB批量转TXT(零依赖)
├── mobi-to-txt.py # MOBI单本转TXT(需mobi库)⭐v3.2新增
├── mobi-to-txt-batch.py # MOBI批量转TXT(需mobi库)⭐v3.2新增
├── pdf-to-txt.py # PDF单本转TXT
├── pdf-to-txt-batch.py # PDF批量转TXT
├── pdf-to-txt-ocr.py # 扫描型PDF转TXT(RapidOCR本地OCR)⭐v3新增
├── txt-to-md.py # TXT单本转Markdown
├── txt-to-md-batch.py # TXT批量转Markdown
├── txt-translate.py # TXT/MD多语言翻译(单本)⭐v3新增
├── txt-translate-batch.py # TXT/MD多语言翻译(批量)⭐v3新增
├── generate-test-epub.py # 生成测试 EPUB
└── vendor/ # 第三方依赖(pdfminer)
外部化思维:把每次解决问题的方案写成文件,不是只存在脑子里
脚本 = 经验的固化 = 零 token 消耗的 AI 工作流
版本:v3.2(2026-07-29)新增 mobi-to-txt / mobi-to-txt-batch,支持 MOBI → TXT(需 pip install mobi)
版本:v3.1(2026-07-25)新增 pdf-to-txt-ocr 扫描版 PDF 本地中文 OCR(RapidOCR,零 token)
这个技能包功能很实用,能把各种格式的电子书转换成可编辑的文本,处理流程完整。最大的优点是翻译不需要API费用,离线就能用。但翻译质量一般,速度也比较慢;图片型电子书和复杂排版的PDF处理效果不太好,章节识别偶尔会出错。适合对排版要求不高、主要用来阅读理解的用户,对出版级或专业翻译需求来说还有差距。