IIIF画像をダウンロードできるツールを作りました。(Windows10用)

f:id:otani0083:20190219223056p:plain

digitalnagasaki.hatenablog.com

を見て、GUIアプリ開発の勉強がてら作ってみました。以下のリンクからダウンロード出来ます。(45MB)
www.dropbox.com

文字コードUTF8のテキストファイルを準備し、Manifest URIを1行づつ書き込んだテキストファイルを準備します。以下のようなイメージです。

https://www.dl.ndl.go.jp/api/iiif/2533251/manifest.json
https://www.dl.ndl.go.jp/api/iiif/1306954/manifest.json

ダウンロードしたexeファイルを起動した後に、参照をクリックしてテキストファイルを読み込むと、順番に画像をダウンロードします。

  • exeファイルと同一階層にManifestのlabel名のディクレトリを作成。
  • Manifestのlabel、attribution、metadataの各項目を記述したhtmlを作成。
  • 全ての画像を結合したpdfを作成。

エラー処理など一切していないので、読み込むファイルにミスがあると強制終了します。

GUIはPyQt5、exe化はpyinstallerを利用しました。
PyQt5 Reference Guide — PyQt 5.11.1 Reference Guide
PyInstaller Quickstart — PyInstaller bundles Python applications

pyinstallerは重いしファイルも肥大化しますが、簡単かつPython環境を準備して貰わなくてもよいのがいいですね。

はじめはGUIの記述にPython標準のTkinterを使っていたのですが、(自分のスキル不足のせいかもしれませんが)あまりに古くさく感じたので、そこそこお手軽そうなPyQtを選択しました。
GUIの構成は、ほぼイメージしていたものを実装している記事があって、大変助かりました。
qiita.com

今回私が書いたものは、以下に置いてあります。コピペが多くて命名が酷いですが…。
https://github.com/otani0083/iiif_image_downloader

重くて使いにくいと感じる方やMac使っている方は、Pythonで直接操作してもらえれば。
GoogleアカウントとChromeがあれば、インストール不要でGoogle Colabですぐに利用できます。
https://colab.research.google.com/

Pythonの入門書は機械学習ブームで、沢山出ています。個人的なおすすめは、ノンプログラマー向けでいろいろ活用の方法を書いているこの本です。

この本もPythonを扱っているし、図書館で使えそうなツールを作っていく形で分かりやすいのですが、Python2環境*1だったと記憶しているので、おすすめしにくくなっています。

*1:Python2からPython3で結構大きな変更が行われている