Yahoo Webサービスを使ってみる
XML Master Professional試験で勉強するまで、Webサービスなんて知りませんでした。
 XML Master Professionalの教科書を読んでいて、なかなかWebサービスのイメージがつかめなかったので、実際にWebサービスを使うプログラムを作成してみました。
 Webサービスを提供するサイトはいろいろありますが、今回はYahooにします。
 さらにYahooのWebサービスにもいろいろありますが、一番オーソドックスと思われるWeb検索について見てみます。
 XML Masterの教科書ではSOAPによるWebサービスが紹介されていますが、Yahooで提供しているのはよりシンプルで簡単なREST形式です。

 通常、Yahooのトップページの検索ボックスにキーワード(xxxxxx)を入力して検索ボタンを押すと、「http://search.yahoo.co.jp/search」というサーバーに「p=xxxxxx」というGETリクエストのパラメータが送られ、結果ページ(html)が表示されます。
 Webサービスは同じような感覚で「http://search.yahooapis.jp/WebSearchService/V1/webSearch」というサーバーに「query=xxxxxx」というGETリクエストのパラメータを送ると結果(xml)を返してくれます。

 ここで、通常の検索とWebサービスの違いは、サーバーに対してリクエストを投げるのが(ブラウザの検索ボタンを押す)人間かプログラムかという違いと、結果のフォーマットがhtmlかxmlかの違いです。

 Javaプログラムからリクエストを投げ、結果をxmlファイルとしてローカルに保存するプログラム(部分抜粋)は下記のようになります。

 「apple」という文字列で検索する(query=appleとする)と、下記のようなxmlファイルがC:\result.xmlとして保存されることになります。デフォルトの検索結果数は10件なので、「apple」という文字列で検索した結果がxml形式で10件分保存されているのがわかります。

 例えば、テキストボックスと検索ボタンを持つページを作り、そこで入力、送信された値をサーブレットで受け取り、サーブレット中で上記のようなコードでYahoo Webサービスにリクエストを投げ、結果をxmlファイルとしてサーバー上に保存します。
 そのxmlファイルをDOMSAXといったAPIで処理し、必要な項目だけを抽出して、独自の検索結果ページを作成することが可能です。


Yahoo!ブックマークに登録 Googleブックマークに登録 はてなブックマークに登録 livedoorブックマークに登録 deliciousブックマークに登録 Buzzurlブックマークに登録


トップ | このサイトについて | 管理者へメール | サイトマップ
Google www una.soragoto.net  
Copyright(c) 2009 - 2012 una All Rights Reserved.