Kindleハイライトやメモを「CSV出力」する方法！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/7617d977-3360-c8ec-e7fc-2b14b96072ed.png" width=80%>


こんにちは@ffzzyyです。

今回は、Kindleの「ハイライトやメモ」を<strong>”CSV出力する方法”</strong>をご紹介します。

## 結論
結論からいうと、[KindleAutoMailer](https://kindle-auto-mailer.com/top)というツールを使えばOKです！

https://kindle-auto-mailer.com/top

詳しい内容は、順をおって解説していきます。

## Kindleはめっちゃ便利だけど・・・
Kindleって、めっちゃ便利ですよね。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/1dd5f14e-d678-6c11-08f8-72ebce1b858a.png" width=40%>

特に感じるKindleの便利さが、「ハイライト機能」。

文章にマーカーを引く機能のことですね。
<br>

本を読みながら”文章を指でなぞる”だけで、マーカーが引ける。
そして、後からマーカーの箇所を一覧確認できる。

紙の本では味わえない、電子書籍だからこその便利機能です。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/e7a7397e-d830-e6aa-2272-569008b10381.png" width=80%>

この機能は、便利なことは間違いないんです。
だけど、”びみょーな点”もありました。

## ハイライトの「出力」ができない

それが、「ハイライトした文章を、体系的に出力できない」という点です。

どういうことか説明します。
<br>

まず、ハイライトした文章を表示する画面が下記のとおりです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/7cf1f84e-fad9-b88f-e5e9-7a830059b822.png)
『公式ページ：https://read.amazon.co.jp/kp/notebook』

この画面のように、Web上でハイライトの確認はできます。

でも残念なことに、この画面には「出力機能」が付いてないんですよね・・・。


よって、これを<strong>CSVに落とし込もう</strong>と思うと、一文ずつコピペする必要があります。
超絶めんどう、、。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/9fae2a79-74ca-f3ac-a75c-e1c4f33ef090.png)


せっかく、ハイライトデータが保管されてるのなら、「CSV出力」とかつけてくれたら良いのに・・・。
そういう不満を抱いていました。

## ハイライトのCSV出力には、「KindleAutoMailer」を使用
そこで、この悩みを解決してくれるのが、[KindleAutoMailer](https://kindle-auto-mailer.com/top)です！
このツールを使うと、「KindleハイライトのCSV出力」が簡単にできます。

https://kindle-auto-mailer.com/top


登録方法を含めて、CSV出力するまでの流れを解説していきます。

## まずは会員登録
まずは、会員登録です。

[KindleAutoMailer](https://kindle-auto-mailer.com/top)にアクセスし、「ログイン」ボタンを押してください。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/feec42bb-d7ff-931b-85cb-a1597a906003.png" width=80%>

↓

ログイン画面の右上に、「新規登録」リンクがあるのでクリックして、登録します。
※登録には、名前とメールアドレスが必要です。料金は無料です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/b464cbbd-5020-61d7-439c-d14bd00b4de4.png)

登録したアドレスに「認証メール」が届くので、忘れずにメールを開いて認証を完了させてください。


## ハイライト連携のための「事前準備」

登録後は、本の連携ができていないため、ハイライト連携をする必要があります。

まずは、連携のための<strong>「事前準備」</strong>から。

ログイン後、ページの下部にある「登録ボタン」をクリックしてください。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/d44db10b-a177-4e72-a19f-cc072b21cd52.png" width=80%>

↓

ハイライト連携のための設定画面が立ち上がります。

※なお、この設定は「最初の1回だけ」で、2回目以降は不要です。
また、システム上にも、詳しい設定方法が書いてあります。


①「ブックマークレットをコピー」します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/8a9a8db6-e4aa-3d27-f987-2416eef4b459.png" width=80%>
↓
②このサイトをお気に入り登録します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/7a25680c-b99e-6bcb-8c5d-91187d1070f2.png" width=80%>
↓
③先ほど登録したブックマークの「編集画面」を開きます。
※PC版のChromeの場合、ブックマークを「右クリック」
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/89cd3af7-19bd-f149-356b-ffcfeb673e5d.png" width=80%>

お使いのブラウザで、お気に入りの登録・編集方法が不明の場合、下記を参考にしてください。
<a href="https://web-camp.io/magazine/archives/83740#st-toc-h-8" target="_blank" rel="noopener noreferrer">【必見】ブックマークレットの使い方・作り方</a>

↓

URLの箇所に、①でコピーされた文字を「貼り付け」します。
※最初に入っていた文字は一旦すべて削除してから、貼り付けてください。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/23a110bd-d62f-5026-f171-c9bb53381c05.png" width=80%>


これで、「事前準備」はすべて完了です！
おつかれさまでした。

## ハイライトをシステムに連携する
事前準備が終わったので、あとはハイライトを<strong>「連携」</strong>するだけです。
<br>

①まず、Amazon公式の[メモとハイライト](https://read.amazon.co.jp/kp/notebook)を開きます。

https://read.amazon.co.jp/kp/notebook

Amazonアカウントでログインします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/0fe17cb1-0aa2-f0a8-3af1-8f77d6690ac2.png" width=80%>

↓

ハイライト確認用の公式画面が開きます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/06a32221-ef49-4f04-095d-4774f8182c0d.png" width=80%>

↓

先ほど連携設定したブックマークを実行します。
すると、画面左上のように、「連携のための入力枠」が出てきます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/13be1b4d-3452-70a2-0a89-6dc73383b1fc.png" width=80%>

↓

連携したい”book_id”の番号を入力し、「取得開始ボタン」を押してください。
※book_idは、本の上部に記載があります。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/969ee5ea-339b-4398-38c7-0b20c4b129b3.png" width=80%>

↓

自動で連携されていくので、しばらくお待ちください。
「処理が完了しました。」と表示されれば、システムへの連携は成功です！
※1冊10秒ほどで連携をします。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/f7d663bd-78ee-2293-0f86-0c6a2b7288a2.png" width=80%>


なお、新たに追加したい本があれば、同様にブックマークを実行して本の追加をしてください！


## 本を選んで、CSV出力！
システムへの連携が完了したので、いよいよ「CSV出力」します。
<br>

[KindleAutoMailer](https://kindle-auto-mailer.com/top)に戻り、もう1度、タイトル一覧ページを開きます。

すると、登録した本が一覧で表示されています。
CSV出力したい本を選択し、ページ下部の「ハイライト表示」ボタンを押して下さい。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/557cf543-46ae-15a4-601a-3f864f17ffd3.png" width=80%>

↓

選択した本の「ハイライト一覧」が表示されています。

表の上部にある「CSVボタン」を押してください。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/7617d977-3360-c8ec-e7fc-2b14b96072ed.png" width=80%>

↓

CSVが出力されました！
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/228281a9-afad-4251-c48b-446a581f0f90.png" width=80%>



## まとめ

「KindleハイライトをCSV出力する方法」をご紹介しました。

紹介したKindleAutoMailerを使うと、CSV出力だけではなく、「語句検索」や「本棚」機能なども使用することができます。

【語句検索機能】↓
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/9cbfd595-4539-950e-bcdc-e8f2ab1653c7.png" width=80%>

【本棚機能】↓
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2311150/3b339949-f7b8-dcb9-a021-7c3f584b8730.png" width=80%>


このツールを使うと、Kindleの便利さが数レベルもアップします。
ぜひ使ってみてください！


https://kindle-auto-mailer.com/top


## 技術的な説明
- Kindleハイライトデータを連携時、値を体系的にデータベースに登録することで、一覧表示やスライドショー表示を実現しています。
- 本の画像はimgデータをDBに保存するのではなく、imgのURLを保存しています。画面を開くたびにその画像をAmazonから呼び出す形式にしています。
- なお、その画像のURLはAmazonAPIを利用しています。ハイライト連携時に、タイトル情報からAmazonAPIを呼び出し本の画像URLを取得。そのURLをDBに保存する形式です。
- そのため、「既にAmazonで販売が終了している本」は、APIから画像の取得が失敗することが稀にあります。この点が欠点ですが、現状は良い解決策が分かっておりません。（どなたか詳しい方、教えていただけると嬉しいです！）

<br>

最後まで読んでいただき、ありがとうございました！