Instapaper から Readability に移行する

「あとで読むツール」にはいろいろあって、僕の中では決定打はないというか、自作するか… と思っているもののひとつなんですが、そんななか最近 iPhone/iPad アプリが登場した Readability を使ってみようという気になってきました。

Readability

これまで Instapaper を使っていたので、じゃあ、ためてある「後で読む」たちを移行するか、と思ったらそうはなんだか簡単にいきそうにない。 Instapaper 側は CSV ファイルで2,000件までなら書き出せるらしいのでこちら側はなんとかよしとする(実は1,980件くらいあってギリギリだったんだけど。) けれども、Readability 側にはインポート機能がなくて、API はメールしないと API トークンがもらえないという面倒くささ

しかし、よく見ると Readability で用意されたメールアドレスにメールで URL を送るとインポートしてくれるらしい。あ、つまり、SMTPっていうAPIがあるってことかー、と脳内理解したのでスクリプトを書きました。ソースはこちら

Gemにしたので

gem install readability_importer
rehash
readability_importer

で使えると思います。

中身の話

URL の一覧を受け取って、メールをつくって SMTP で Readability に送る、ということをしていますが、Readability の SMTP が遅いのもあってか、普通にNet::SMTPとかで実装するとかなーり遅いです。 そこで EventMachine で並列化して送るようになっているます。あんまり無茶しすぎるとブロックされそうなのでリーズナブルな並列度合いで使ってください。-cで変えられます。

あと、重要なのことなのですがOP25Bをされている環境1ではSMTPが使えないのでたぶん動かないと思います。

  1. たぶんほとんどの環境では無理かもしれない… ↩︎