背景
書籍バーコードを読み取り、書籍情報を取得、書影付きでScrapbox or Twitter へ送付する(手動での直接ISBN入力も可能)
という記事を読み、iPhoneやiPadでもやりたいと思った。
現在Amazonの書籍ページからScrapboxのページを作るブックマークレットを使わせてもらっているが、同じようなことができるみたいだ。
上のブログ記事では、openBD APIやAmazon Product Advertising APIを使って書籍情報の検索をしているらしいが、世には他にGoogle Books APIというものもあり、それでも書籍情報を入手できるらしい。1,000件/日という制限はあるが、使うAPIの種類によってはAPIキーの取得も不要らしい。
手元にちょうど「Book to Day One」というGoogle Books APIを使った、iOS 12の頃のものらしい(あるいは、「変数」の多用のされ方からするとショートカットがまだWorkflowアプリだった頃のものかもしれない)、どこで入手したのかを忘れたショートカットがある。Google Books APIの使い方のとても良い参考になった。
そこで、バーコードを読み取って、Google Books APIで本の情報を得て、Scrapboxに送るショートカットを作ってみた。
ショートカットの実行方法は3通り
その1. Webブラウザ上などで書籍名やISBNを文字選択し、それをメニューから共有してシェアシートからこのショートカットを実行する。
書籍名は書籍名、ISBNの場合は数字の部分だけ選択し、メニューから共有を選ぶ。
ISBNはISBN-10とISBN-13の両方に対応している。
ただし、ISBNなのか書籍名なのかを10桁以上の数字かどうかで判断しているので、ISBN-10で0から始まる英語の一部の書籍には対応していない。*1
シェアシートからこのショートカット「ScrapBook」を選ぶ。
確認画面が出るのでOKをタップ。ハイフンなど余分なものが混じっている場合はここで余分なものを消す。
その2. 直接このショートカットを起動して、書籍名やISBNを入力する。
ISBNや書籍名を入力する。書籍名はフルネームでなくても検索してくれる。
10候補に含れていない場合は、書籍名をもう少し長めに入力するとヒットしやすいかもしれない。
その3. 直接このショートカットを起動して、何も入力せずにOKボタンをタップしバーコード読み取りを開始させる。
実際は、この写真よりもレンズをバーコードに近づける。
978から始まる上のバーコードだけを読み取れるように、下のバーコードは隠した方が良いかも。
Scrapboxに作られる本の情報ページの例
Safariが自動的に開いて、該当書籍ページが自動的に作られる。
一番下のプレビューリンクをタップすると、
Googleブックスのページに跳ぶ。
気付いたこと
書籍検索APIそれぞれ特徴があるらしい。
Google Books APIはショートカットでも使える仕様でありがたい。
Google Books APIでKindle ダイレクト・パブリッシングの書籍を数冊検索してみたが出てこなかった。
作ったショートカット
ScrapBook
https://www.icloud.com/shortcuts/7e366dfb6e054d46954e8546142feab2
参考にした記事・もの
- Google Books APIから取得した書籍情報をscrapboxに送るpwa - Qiita
- Google Books API からJSONデータを取得してjQueryで処理する - Qiita
- Book to Day Oneというショートカット
また、以下のメモで国立国会図書館サーチAPIを試した sorashima.hatenablog.com