Kindleで購入した本をブクログにインポートする(Macユーザー向け)
ブクログは仮想的な本棚を作成したり、本のレビューやメモを残したりできるサービスです。 同様のサービスに読書メーターがありますが、こちらは読書メモを非公開にすることができず、また、1つの本に対して残せるメモの文字数が250文字に制限されるため、個人用に読書記録を残す用途としては「ブクログ」の方が適していそうです(ユーザー数は「読書メーター」の方が多いらしい)。
インポート手順
1. ターミナル.appの起動
アプリケーション > ユーティリティー
にあるターミナル.app
を起動します。
別のターミナルアプリを使用している方は、そちらで大丈夫です。
2. Kindle for Macの準備
Kindle for Macがインストール済みでない場合は、こちらからインストールしてください。
3. Kindleのキャッシュデータの生成
Kindle for Macを起動し、🔄をクリックしてライブラリを最新の状態に更新します。更新が完了したらアプリを終了します。
アプリを終了すると、Kindleで購入した本のXML形式のキャッシュデータKindleSyncMetadataCache.xml
が生成されます。
4. インポート用CSVファイルの作成
上の手順で生成されたXMLファイルを解析してインポート用のCSVを作成します。
ターミナルに以下のコマンドを貼り付けてEnterキーを押して実行します。
xmllint --xpath '//purchase_date[string-length(text()) > 0]/../ASIN | //purchase_date[string-length(text()) > 0]/../purchase_date' ~/Library/Application\ Support/Kindle/Cache/KindleSyncMetadataCache.xml | sed -E 's/<ASIN>([^<]+)<\/ASIN><purchase_date>([^<]+)<\/purchase_date>/\1 \2\n/g' | sort -k 2 | awk '{print "1," $1 ",,,,,,,,,"}' > ~/Downloads/import.csv
コマンドを実行すると、ダウンロードフォルダにインポート用のCSVファイルimport.csv
が作成されます。
このファイルを開き、1列目に1
、2列目に10桁のASINコードが出力されていれば正しく作成できています。
1,B009IXLHZ2,,,,,,,,, 1,B009IXKPVY,,,,,,,,, 1,B009IXASIE,,,,,,,,, 1,B009IXJVVO,,,,,,,,, 1,B009KSOWRU,,,,,,,,,
Send to Kindle等でインポートしたAmazonで購入していない書籍は、このCSVには含まれません。 購入した順番に並べ替えているので、インポートすると購入日時が新しいものが本棚の上に並びます。
5. ブクログにインポート
ブクログのインポート画面で、上の手順で作成したCSVファイルimport.csv
を指定してインポートを実行します。
インポート完了後に本棚画面に移動すると... 綺麗にインポートできました。以上で終了です。