Library Gadget Generator


先日公開してたけどこれが正式公開ってことで。
(ちょっと直しました)


これは何?


Web上に公開されている図書館の蔵書検索フォームから,iGoogle等で使用できるGoogleガジェットを作成するサービスです。

どうやって使うの?


上記したブックマークレットを登録*1してから以下の作業を行ってください。

  1. ガジェットに変換したい検索フォームのあるページを開きます。
  2. ガジェットに使用したい項目について,指定の検索語を入力します。
    • 現在対応させているのは次の5語:"キーワード","タイトル","著者","出版社"*2,"ISBN"*3
    • 入力する項目は適宜省略できます。また指定の仕方によってガジェットの形態を変えられます(後述)。
  3. 登録しておいたブックマークレットを使用します。(ブックマークレットの機能については後述)
  4. フォームを送信します(ブックマークレットにより変換用CGIに送信される設定になってます)
  5. 結果がGoogleガジェットの書式にそったXMLで帰ります。
  6. ファイルを保存して,必要な箇所を適当に直します。
    • "{タイトルを入力してください ex.○○図書館蔵書検索}"とか書いてある場所だけ直せば格好はつきます。詳しく修正したい場合はこのへんでも見てください。
    • なお,XMLファイルなので必ずUTFの扱えるエディタ等で直してください。
  7. できたXMLファイルを適当な場所にアップロードしてください。


以上でガジェットの作成は終了です。
アップロードされたガジェットはiGoogleのほか,以下のようにブログなりWebページなりに貼り付けることもできます(Googleデスクトップでも動くかは導入してないのでわからんです)。

上記は検索語を5つすべて設定した場合。通常はキーワードの項目だけ表示され,[詳細表示]をクリックすると残りの項目も表示されます。Firefox2とIE7で動作確認。


この他に,"キーワード"のみを指定すると,以下のように詳細表示機能のないシンプル版。



逆に"キーワード"を指定しないと以下のような詳細表示オンリーになります。



デザインをもっといじりたければ,htmlなりCSSなりに手を加えてみてください。

何に使えるの?


登録すればiGoogle上から本の検索とかできます。
あとブログとかに貼ったりもできるんで,公式ブログの横に蔵書検索の窓を置くとかも簡単にできるんじゃないかと。いや便利かどうかは知らんですが。
ブラウザの検索窓とかと違って複数の検索キー(タイトル×著者名とか)が使えるのはいいかもですね。

どうやって動いてるの?


ブックマークレットCGIPHP)のコンボです。


ブックマークレットではフォームの送信先の書き換え,サーバサイドで取得しづらいパラメータのフォームへの追加などの処理をさせてます。
こうしてフォームを改竄するとサーバ側で本来OPACに送信されるはずのリクエストのコピーが取得できるので,それを解析してGoogle ガジェットの形式に変換してます。


ちなみにガジェット本体は広島市立図書館の前例を参考にしてます。先達がいるっていいですね。

どうして作ったの?


某Next-LでGoogleガジェットの話題が盛り上がってたので作ってみたくなり,どうせなら自分でちまちま作るより一発でぽーんとできる方法はないかなと考えてみました。
ちなみにこれの前に同じノリでFirefoxの検索プラグインが作れるみたいのを用意してたんですが,あんまり面白くなかったので保留(ぁ あとで気が向いたら公開します。


あ,あと。
以前はこの手の作業やるのに,htmlソース読んだり,POSTをGETに変えるブックマークレット使ってみたり,HTTPヘッダを読み取るツール(FirefoxのLiveHTTPHeadersとか)で使ってたりしてましたが,こっちのが楽なことに最近気づいたのも今回のを思いついたきっかけだったりします。

まあそういうことで。


オフィシャルでも非公式でもなんでも,色々作ったり使ったりしてみちゃってくださいな。

*1:普通にブラウザの「お気に入り」にいれるだけです。ブックマークレットの使い方はkeyword:ブックマークレットとかで。

*2:新規に追加しました

*3:チェックの関係上全角のみ