Kindle本のASINを一つずつ調べずに見つける方法
ASIN(Amazon Standard Identification Number)は、Amazon上の商品を識別する10桁の英数字コードです。KindleのASINは書籍ごとに異なり、タイトルや著者名とは別に「この本が何であるか」を内部的に管理するためのキーとして使われています。印刷版書籍の場合はISBNがそのままASINとして使われることが多いですが、Kindle電子書籍のASINはAmazonが独自に発行するもので、ISBNとは対応していません。
Calibreのようなライブラリ管理ツールでは、正確な書誌情報を自動取得するためにこのASINが重要な役割を果たします。
方法① AmazonのURLから確認
Kindle書籍の商品ページURLの /dp/ または /gp/product/ の直後にある「B0」から始まる10桁のコードがASINです。

方法② Kindle書籍の登録情報から確認
Kindle書籍のページを下にスクロールし、「 商品の説明」欄を見るとASINが明記されています。

方法③ KindleSyncMetadataCache.xmlから確認
Kindle for Windows/PC/Macアプリで書籍を開いたりダウンロードしたりすると、AmazonサーバーからASINをキーとするKindle Sync MetadataCache.xmlという名前のファイルが配信されます。

このファイルにすべての書籍のメタデータが表示され、各エントリのタイトル、著者、その他の書誌メタデータ、同期/ダウンロードステータスフラグ、ファイルサイズ、コンテンツタイプ/フォーマットインジケーター(例:KFXと旧フォーマット)が含まれます。

KindleSyncMetadataCache.xmlファイルの保存場所はOSやアプリの種類(旧Win32版/新MSIXストア版/Mac版)によって異なります。
| KindleSyncMetadataCache.xml ファイルの場所 | ||
|---|---|---|
| 1 | Windows(旧バージョンのWin32 Kindle4PC) | %LOCALAPPDATA%\Amazon\Kindle\Cache\ |
| 2 | 新しいKindle for Windows / MSIXストアアプリ | %LOCALAPPDATA%\Packages\AMZNKindle.AmazonKindleReadingApp_m1sc522ngdk36\LocalState\Classic\Data\Cache\ |
| 3 | Mac Kindleアプリ | ~/Library/Application Support/Kindle/Cache/ |
Kindle for PC/MacアプリやWindowsの仕様(MSIXアプリ化など)は定期的にアップデートされます。キャッシュファイルの保存場所(パス)が記事の記述から変更されている場合があるため、見つからない場合は最新のパス構造を確認する必要があります。
Calibre等のツールで書誌情報を手作業補正したいだけの場合、方法①(URLからコピペ) または 方法②(商品ページから確認) を利用するのが最も安全かつ確実です。
Kindle本のASINをファイル名に一括書き込みし、オフラインコピーを保存する(EPUB版)
上記の方法でASINを調べることはできますが、実際のブック ファイルにASIN情報を一括で書き込み、オフラインのバックアップとして保存したい場合は、専用ツールが必要になります。
Epubor UltimateツールはKindle for Win/Macアプリでダウンロード済みの本を自動的に取り込み、ローカルのKindleSyncMetadataCache.xml をスキャンして、そのメタデータを各書籍ファイルに書き込んでくれます。そのため、Kindleファイルの保存場所を自分で探したり、XMLファイルを別の外部ツールにエクスポートして紐付けたりする必要がありません。
Epubor Ultimateを起動して左側の「Kindle」タブをクリックし、ライブラリを更新すると、ダウンロード済みの本が一覧表示されます。

実際、Kindle本のASINを認識したい場合、Kindle本をDRMフリーのファイル形式で保存して、Kindleを簡単に整理できるようにしたいものです。このツールはまさにそのお手伝いをします!本を左側のエリアから右側のエリアへドラッグし、出力フォーマットとしてePubを選択して変換を開始します。

出力フォルダがすぐに表示され、KindleアーカイブがDRMフリーで保存されます。さらに良いことに、これらのファイルにはバイナリヘッダー内にASINが含まれています。つまり、ファイル名自体にASINが埋め込まれているのです。
出力フォルダからCalibreライブラリに書籍をドラッグして管理しやすくしましょう。変換された各書籍ファイルには、すでにASINメタデータが書き込まれています。

ファイル名をTitle_ASIN_nodrm.epub形式に自動で一括リネームする
Epubor Ultimateで変換した本にはすでにASIN情報が含まれていますが、ファイル名からひと目でASINが分かるようにしたい場合は、ファイル名自体を「タイトル_ASIN.epub」の形式にリネームする必要があります。
ファイル名にはまだASINが含まれていないため、各EPUBファイル内部のメタデータ(EPUBはZIP形式なので、その中の.opfファイル)からASINを取得する必要があります。
手順は以下の通りです。
1. CMDウィンドウを開き、「powershell」と入力してEnterキーを押す
2. 記事内で提供されているPowerShellスクリプトのコードブロックをまるごと貼り付けてEnterキーを押す

このスクリプトは指定フォルダ内の各EPUBファイルを開き、内部の.opfファイルからASIN(MOBI-ASIN、ASIN、AMAZONなどのスキームや、Amazon ASINメタタグ、またはB0から始まるパターンで検索)を抽出し、ファイル名を自動的にリネームします。

※実行前に、コマンド内のパスをご自身のPCのユーザー名やEpubor Ultimateの出力先フォルダに合わせて書き換える必要があります。
このPowerShellコマンドを使えば、本を一つずつ手作業でASIN付きにリネームする必要がなくなり、ローカルライブラリを効率的に整理できます。


