将 Kindle 电子书导入 iBooks

Kindle 已经用了好久了,确实极大的提升了我的阅读效率。Kindle 可谓是既实惠又方便,但是也有一些淡淡的忧伤——技术类书籍阅读不方便。

本文中我就通过将 Kindle 的电子书转为 edup 格式,然后导入 iBooks 来缓解这种不方便。(另外本文也可以解决 Amazon 因美区和中区账号不互通导致Kindle要来回切换账号的尴尬)

本篇文章,只供个人购买的正版书籍进行参考使用。请勿使用于传播盗版书籍,支持正版,人人有责!

Kindle 的忧伤

由于技术类书籍免不了里边都会有图示、代码之类的。如果是正版的电子书,一般来说代码的排版还算 OK。但是图片有时候就看不清了,比如我现在正在使用的 Kindle Paperwhite 虽然已经是 300 ppi 了,但是看图还是感觉模糊,图上的字很多时候要连猜带蒙。(补充:Kindle 中可以按住书中的图片以达到放大的效果)

所以对于技术类书籍,我基本上都是买实体书来看,但是实体书真的很大很沉啊,每天挤地铁的时间我也不能都带着大部头来翻吧。后来就想到 Kindle 也有对应的手机软件,这样的话清晰度应该就不成问题了。但是 Kindle 的 iOS 应用和 macOS 应用真的做的好烂啊。有次我升级了 iOS 的 Kindle 版本,然后去山里玩了,当我在山里准备用它看看书时,意外的发现之前已经下载过的书全部都打不开了。macOS 版本的也是各种 Bug,之前优惠时买过一本《HTTP 权威指南》,竟然不能正常显示图片,要知道这是一本售价高达 60 元的电子书竟然不能正常阅读。后来我就跟 Amazon 客服反馈这个问题,结果被告知不是他们软件的事儿,是电子书制作方的事儿,最后也就不了了之了,可是要知道这本书在我的 Kindle 和手机上都能正常显示。(这个问题可以通过调字体大小解决,目前的 Kindle for Mac 虽然还有此问题但有所改善)

最近受一个群友的启发,想到了一个办法,将 Kindle 里的电子书转为 edup 格式导入 iBooks 里,这样不管用手机还是电脑都可以顺利阅览,手机上看图也更方便一些,也不用担心因为 Amazon 升级电子书格式而导致的打不开问题。

说搞就搞~

移除 DRM

Kindle 上所有的电子书都是有 DRM 保护的,格式为 azw 或 azw3,直接转 epub 是转不了的。这时,就要求我们对 DRM 进行破解。

获取电子书

首先我们先获取需要进行破解的电子书,总共有三种方法:

  • 通过 Amazon 官网下载
  • 直接从 Kindle 设备中拷贝
  • 通过 Kindle for Mac/PC 下载

由于现在高版本的 Kindle 都使用了 KFX 格式,目前我还没找到哪款工具能处理 KFX 格式的,所以前两种方案都可以否了,这里主要记录通过 Kindle for Mac 这个桌面软件来获取(PC 上也类似)。

工具

工欲善其事,必先利其器。

Kindle for Mac

高版本(1.19+)的 Kindle for Mac 也使用了 KFX 格式,目前 App Store 的 Kindle 已经是 1.21.1 了。为了破解 DRM 我们需要得到以前的格式的电子书,有两种办法:

  1. 将 Kindle 回退到 1.17 或以前的版本
  2. 修改 1.19+版本的一个文件的可执行权限

第一种办法是确保可以成功的,只是 Amazon 已经不提供这个版本的下载了,我们需要自己去第三方下载。Mac 对应的为“KindleForMac-44182.dmg”

为方便下载,我往百度云上放了一个 密码: gwlk

MD-5: E7E36D5369E1F3CF1D28E5D9115DF15F
SHA-1: 7AB9A86B954CB23D622BD79E3257F8E2182D791C
SHA-256: 28DC21246A9C7CDEDD2D6F0F4082E6BF7EF9DB9CE9D485548E 8A9E1D19EAE2AC

第二种办法不用降版本,但是不能保证 1.20+版本一定可行(我试了 1.21.1 可以)。
注意:不管用哪种方法,都需要删除之前已下载的电子书然后重新下载。

这里我就用第二种方法了,在 Kindle for Mac 未打开的情况下在终端输入

1
sudo chmod -x /Applications/Kindle.app/Contents/MacOS/renderer-test

然后删除 My Kindle Content 文件夹下的内容,重新下载就能看到以前格式的电子书了。

Calibre

Calibre 直接去官网下载,这是一款开源的电子书管理应用,直接安装就行了。

DeDRM plugin

Calibre 是支持插件的,并且它还有一个插件仓库用于方便安装各种插件。但是 Calibre 本身是不支持去除 DRM 的,并且官方插件仓库也没有提供这个插件(毕竟这还是比较敏感的)。我们可以到DeDRM_tools的 release 下下载最新 zip 包,解压,在其中的DeDRM_calibre_plugin目录下有个DeDRM_plugin.zip压缩包,这个就是插件,不用解压。打开 Calibre 的“偏好选项 - 偏好选项 - 高级选项 - 插件”,点“从文件加载插件”,选DeDRM_plugin.zip,之后重启 Calibre

Do it

经过以上两步后,我们就可以开始动手了。有了插件的助力,一个动作就可以搞定 DRM 了:将 azw 文件拖入 Calibre。等导入完成就好了,插件会自动移除 DRM。

没有了 DRM,我们就可以将这个电子书转为任意格式,比如我要在 iBooks 里阅读,就转为 edup,然后在 iBooks 就能顺利打开了。

参考

DeDRM_tools: DeDRM tools for ebooks