Googleは、いわずと知れたサーチエンジンの代表ともいうべきサイトです。皆さんの中にも、パーソナル/ビジネス用途を問わず、インターネット上から情報を得るためにGoogleの恩恵にあずかっているという方は多いのではないでしょうか。
このGoogleが抱える膨大なサイト情報を自分自身のアプリケーションから自由に利用できたら、どんなに便利でしょう。本稿では、Googleが無償で提供するGoogle APIを介して、Googleの検索データベースに直接にアクセスする方法を紹介します。Google APIを利用することで、Googleのデータベースをあたかも自前のものであるかのようにアクセスすることができますので、取得したデータを加工したり、検索結果をより自由な形にレイアウトしたうえで見せることも可能になるのです。
それでは早速、Google API活用の具体的なサンプルを眺めてみることにしましょう。
Google API を利用するに当たっては、 Google Web APIs devaloper's Kit とライセンスキーを、 Google Web APIsから取得する必要があります。ダウンロードファイル googleapi.zip を入手したら、解凍したフォルダ直下にある googleapi.jar をアプリケーションルート配下の「/WEB-INF/lib」フォルダにコピーしてください。
ライセンスキーは、同Google Web APIsのページからユーザー登録を行うだけで取得することができます。登録したE-Mailアドレスに対して、ライセンスキー取得のためのURLが送信されますので、指定されたページにアクセスするだけで終了です。
それでは、JSPページからGoogle API にアクセスして、インターネット上のサイトを検索してみることにしましょう。もちろん、実際のアプリケーションではコード部分はサーブレットクラス、JavaBeansなどに記述するべきですが、本稿ではスペースの都合上、JSPページ内にすべて記述してしまうことにします。
<%@ page contentType="text/html;charset=Windows-31J" |
GoogleSearchクラスは、Google検索を行うための諸条件を管理するためのクラスで、このクラスに対して必要なパラメータ値を渡すことで、Googleに対して検索問い合わせを行うことができます(設定可能なパラメータ値は、ダウンロードファイルに添付のAPIリファレンスを参照してください)。setKeyメソッドには、手順(1)で取得したライセンスキーを各自設定する必要があります。
一連のsetterメソッドを設定した後は、 GoogleSearch#doSearchメソッドで検索処理を実行します。doSearchメソッドは、戻り値として検索結果の概要(結果件数や検索時間)を表す GoogleSearchResultクラスを返します。結果の詳細情報を取得したい場合には、 GoogleSearchResult#getResultElements メソッドでGoogleSearchResultElementクラスを取得してください。
Copyright © ITmedia, Inc. All Rights Reserved.