自炊により日々増えていく蔵書の電子ファイル。
綺麗になっていく本棚と軽快なスキャナーの動きを見て満足していたのも束の間。
これ以上ファイルが増えるまえに整理しないと!
と危機感を持ち、どうすれば簡単に蔵書管理ができるか考えてみました。
ファイルの命名規則を決める
まずはどんどん増えていくPDFファイルやZIPファイルの命名規則を決めました。
(カテゴリ) [著者] タイトル (ISBN).zip
カテゴリには「小説」「専門書」「コミック」「歴史」など大まかなジャンル分けをしました。
著者とタイトルはそのまま。基本的にはamazonからデータを引っ張ってきています。
そして最後のISBNですが、これは書籍に付与される国際標準番号で、このISBNがあれば書籍の特定はできるようになっています。
一般的な蔵書管理アプリにもISBNを記録する欄がありますので、とりあえずISBNを記録しておけばデータをコンバートすることができるはずです。
上記の命名規則からISBNを抜き出してテキストファイルに保存するVBSはこんな感じです。
ISBNを抽出したいファイルがあるフォルダ内に「ISBN.vbs」とでもファイル名を付けて下記のコードを保存します。
ISBN.vbsを実行するとISBN.txtというISBN番号をファイル名から抽出したファイルが生成されます。
[vb]Option Explicit
Dim fsoObj
Dim objText
Dim strScriptPath
Dim strSavePath
‘スクリプトのパス取得
strScriptPath = Replace(WScript.ScriptFullName,WScript.ScriptName,””)
‘テキストファイルの保存先
strSavePath = strScriptPath & “ISBN.txt”
‘オブジェクト生成
Set fsoObj = CreateObject(“Scripting.FileSystemObject”)
‘ログファイルがあったら抹消
If fsoObj.FileExists(strSavePath) Then
Call fsoObj.DeleteFile(strSavePath)
End If
‘ログファイル準備
Set objText = fsoObj.OpenTextFile(strSavePath, 8, True, 0)
‘メイン実行
Call CreateFileList(strScriptPath)
‘ログファイルクローズ
objText.Close
‘オブジェクト開放
Set objText = Nothing
Set fsoObj = Nothing
‘———————————————–
‘リスト作成メイン
‘———————————————–
Sub CreateFileList(inFolderName)
Dim fsoFolder
Dim fsoFile
Dim strFileName
Dim objReg
Dim objMatches
‘フォルダオブジェクト取得
Set fsoFolder = fsoObj.GetFolder(inFolderName)
Set objReg = new RegExp
‘正規表現パターン
objReg.pattern = “\([0-9xX]{10,13}\)”
‘フォルダ内/ファイルループ
For Each fsoFile In fsoFolder.Files
‘ファイル名の取得
strFileName = fsoFile.Name
‘正規表現で抽出
Set objMatches = objReg.Execute(strFileName)
If objMatches.Count > 0 Then
‘括弧を削除してログに出力
objText.WriteLine Mid(objMatches(0), 2, Len(objMatches(0))-2)
End If
Next
‘オブジェクト開放
set fsoFolder = Nothing
set fsoFile = Nothing
set objReg = Nothing
set objMatches = Nothing
End Sub[/vb]
※サブフォルダは無視します。
※ISBNは10桁から13桁まで対応
蔵書管理するソフト
以前から利用していたMediaMakerを引き続き利用します。
ISBNを入力するだけで、Amazonから情報を持ってきて蔵書管理をしてくれるのでお手軽です。
未読・読中・読了などの進捗状況を記録できたらり、欲しいものリストを作ったりすることもできます。
その他にもWebを利用した蔵書管理サービスはいくつかあるので、自分の環境にあったサービスを利用すると良いかもしれません。
せっかく自炊(電子化)したのに
せっかく自炊(電子化)したのに、蔵書管理しないまま放置するのはもったいないです。
整理整頓することでより一層快適な読書Lifeを送れます。