LDRのフィードをレート情報付きでエクスポートする
LDRのフィードデータからレート(★★★☆☆)をカテゴリとしたOPML(XML)ファイルを作成するコマンドラインツールを作りました。
Live Dwango Readerから他のRSSリーダへ移行する際に、レートデータを維持して移行する用途です。
fastladderへの移行の場合は別の方法もあります。
必要なもの
- Node.js 6>=
- 後述する
ldr.json
ldr.json
LDRのopmlエクスポートにはカテゴリ(ディレクトリ)の情報しか含まれていません。
なので、編集画面に使われてるAPIのレスポンスデータ(ldr.json
とここでは呼ぶ)を使います。
ldr.jsonは http://reader.livedoor.com/api/subs?unread=0
のレスポンスです。
簡単な方法だと以下の手順で取得できます。 (ApiKeyがいるので、curlなどだと余計に面倒なので、ログインしてるブラウザでコピーするのが楽)
- ブラウザの開発者ツールでネットワークを開く
- “編集”をクリック
http://reader.livedoor.com/api/subs?unread=0
へのリクエストを探す- レスポンスをコピーして
ldr.json
として保存する
ldr.json
にはカテゴリ、レートなどの情報が含まれています。
普通にexportできるexport.opml
の上位互換なデータなので、閉鎖する前に取得しておくと便利だと思います。
Install
ldr-export-opmlはnpm
などでインストール出来ます。
npm install ldr-export-opml -g
使い方は書いてないですが普通にモジュールとしても使えるので、適当に使ってください。
使い方
取得した ldr.json
を引数に渡して実行するopml形式のXMLを出力してくれます。
Usage
$ ldr-export-opml ldr.json
Options:
--output path to output
Examples
$ ldr-export-opml path/to/ldr.json
$ cat path/to/ldr.json | ldr-export-opml
LDRのフィードデータからレート(★★★☆☆)をカテゴリとしたOPML(XML)ファイルを作成するツールです。https://t.co/Be9zyssQyN pic.twitter.com/0doJLj9Xb9
— azu (@azu_re) July 29, 2017
おわり
LDRもサービス終了です。
乗り換え先をどうするのかがまだ決まってないけど多分必要になるので作りました。(バグってたらPull Requestください)
一日数千エントリ見てるので、j, k, n、s, aあたりがどれだけつまらずに動くかが大事になってくるので、乗り換え先の相性が大変。
なので、Feedlyとかのビジュアルよりなマガジン系はあんまり向いてない。 Fastladderを使えるといいけど、維持コスト(手間/値段)が高くなるので手を出しにくい。Tiny Tiny RSSも同じような理由。
inoreader.comは悪くは無さそうだけど、スムーズスクロールが遅かったり、プリロードがなかったりしてちょっとチューニングが必要そう。(コードを見てたけど結構レガシーな感じだったのでどこまでhookできるんだろ)
クライアント側はどうにでもなる気がするので、サーバ側をServerlessな感じにしたものがあればコスト少なくて済むのかなと思ったけど、LDRのようなサービスはクローラーとその結果の保存データで容量食うのであんまり向いて無さそう。Firebaseみたいなところでやったほうがコスト的には良さそう。
あとはCappuccinoとかみたいなクライアント側だけでどうにかするパターンかな。(未読管理的な問題はありそうだけど)
お知らせ欄
JavaScript Primerの書籍版がAmazonで購入できます。
JavaScriptに関する最新情報は週一でJSer.infoを更新しています。
GitHub Sponsorsでの支援を募集しています。