0218 - Klib 导入微信读书笔记

事情的起因是这样的,突然发现 Kindle for iOS 等客户端,之前是可以将标注通过 Email 以 html 附件的形式导出,现在却不行了。哎,Kindle 变得更加封闭了。

Kindle 如此傲娇,不想伺候了。换什么阅读工具呢?自然是已经买了会员的微信读书。

这又带来另一个问题:微信读书同样比较封闭,并没有接口可以导出标注;只能自己一本本书复杂纯文本的标注,然后想办法格式化再导入。关键,每次更新,都要这么手动操作一把,实在太烦了。

其实,技术上还是有条路可以绕的。微信读书肯定是有接口的,只是没有开放;核心的,是没有开放授权机制。怎么办呢?绕过去。微信读书网页版登录后,从浏览器中提取 Cookie;然后,通过 Cookie 完成授权,并调用接口以获取读书笔记。

有开源项目已经在这么干了。有了前人的工作,分析接口的工作就少了很多。到这时,技术可行性都已经通过了,只剩下堆代码实现功能了。

业务上,还有些繁琐的细节。比如,微信读书不只是商城里的书,还支持自己上传的 epub/txt 等格式的书、以及公众号的文章。不同类型的数据源,所产生的数据结构是不同的,需要分别适配,还要集成到统一的数据库中,费了一点心思。

堆了一天代码,主体功能已经跑通了。接下来,还需要完善业务、代码、交互上的细节。功能完成后,还要考虑一定规模内测以发现问题,以及发布、推广的事。哎,这么个功能,做出来还挺麻烦的。