読書メーターにはエクスポート機能が無く、他サービスへのデータの移動が出来ない。
機能の要望は以前から上がっているものの、一向に実装される気配が無いので手動で強引に移行してみたのでメモ。
注意点
- この方法で得られるのは本と登録日のみ
- 本のコメント等は無視される
- ASINがない本は登録不可
- 将来ページ構成が変わると使えなくなる
無理やり回収
ログインした状態で下記を開く。
ページ下部まで行くと自動的に次のページが読み込まれるので、全て読み込むまでひたすらひたすらスクロールした後、ソースを保存する。
大雑把に抽出
findstr /R "[0-9][0-9][0-9][0-9]年[0-9][0-9]月[0-9][0-9]日 /b/" source.htm > out.csv
日付とASIN情報を含む行だけ抽出。
手動で置換
正規表現使えるエディタで以下の置換を実施。
概要 | 置換前 | 置換後 |
---|---|---|
タブ削除 | \t | (空) |
ISBN10抽出 | .*"/b/(\w*)">(.*)<.* | $1\t$2 |
日時変換/行連結 | (\d\d\d\d)年(\d\d)月(\d\d)日\r\n | $1-$2-$3\t |
CSV変換 | (.*)\t(.*)\t(.*) | "1","$2","","","","読み終わった","","","","","$1 00:00:00" |
以上で完成。ASIN13や登録日等に当たる列は、空のままでもインポートしてみるとちゃんと通ります。
ちなみにブクログ形式のCSVフォーマットは以下の形式になっているので、まとめていじりたければ登録前に編集しておくと効率的。
サービスID, アイテムID, 13桁ISBN, カテゴリ, 評価, 読書状況, レビュー, タグ, 非公開メモ, 登録日時, 読了日