不改变格式将 azw3 转换为 mobi

亚马逊的电子邮件推送是不支持 azw3 格式的,这时如果想要在多平台同步书籍和笔记就要把 azw3 格式转换为 mobi 格式了,而 mobi 是较老的格式,因此转换时常会出现排版变丑了的情况,这时就需要用下面的方式转换了。

注:本文所示仅限于 mac,本文为 Kindlefere 内容中 mac 有关部分,其余操作系统请直接看 原文

将 azw3 拆解

点击下载 KindleUnpack

解压缩下载到的 zip 压缩包,可以看到一个 app 文件,将 azw3 电子书拖到此 APP 图标上,则就会在相同目录下生成一个以原电子书文件名命名的文件夹。

生成 mobi

点击下载 KindleGen

解压缩下载到的 zip 压缩包,可以看到一个 app 文件,将拆解后文件夹内的 /mobi8/OEBPS 目录中的 content.opf 文件拖到此 APP 图标上,则就会在相同目录下生成一个 content.mobi 文件。此文件就是最后的 mobi 文件

文件压缩(可选)

点击下载 KindleStrip

使用 KindleGen 转换后的 mobi 文件会包含源文件,所以文件比较大,此时可以使用 KindleStrip 将其处理一下,即可得到精简的 mobi 文件。

解压缩下载到的 zip 压缩包,可以看到一个 py 文件,将此文件与 content.mobi 放置在同一目录,运行终端执行以下命令

1
2
cd .	#这里改成你的文件所在目录
python kindlestrip_v136.py content.mobi content_mini.mobi

运行完生成的 content_mini.mobi 就是 最终的 mobi 文件

错误处理

如果出现以下提示

错误(opfparser):E20004: Spine 中的 ID 与 manifest 中的任何项均不匹配:x_ncx

则使用文本编辑器打开 content.opf 文件搜索 “x_ncx” 并将那行删掉保存即可。