|
||||||||||||||||||||||
| 前のページ 1 2 | ||||||||||||||||||||||
| SOAPをPerlから使う | ||||||||||||||||||||||
|
それでは、実際にSOAPを利用したWeb APIにPerlを使ってアクセスしてみることにしましょう。今回サンプルとして利用するのは、Google SOAP Search API(注1)、つまりGoogleが公開している検索用APIです。このサービスは公開されてからかなりの時間がたっているのですがいまだにベータ版で、検索の回数が1つのライセンスキーに対して1日1000クエリに限定されています。実用的かというと疑問が残りますが、有名なサービスということで、サンプルにはよいでしょう。 リスト15に作成したサンプルを示します。このサンプルでは、「perl」というキーワードで検索を行い、10件のURLを表示しています。なお、このサンプルを実行するには、あらかじめGoogleのWebサイトにアクセスして、ライセンスキーを取得する必要があります。 リスト15:Google SOAP Search APIのサンプル
#!/usr/bin/perl
Google SOAP Search APIは、WSDLを公開しているので、それをサンプルと同じディレクトリに置いて実行してください。WSDLのおかげで、プログラム中ではアクセス先のURLも、アクセスしているメソッドの詳細も記述する必要がありません。 アクセスするのはWeb検索を行うdoGoogleSearchというメソッドです。受け渡すパラメータは次ページの表3の10個です。
表3:doGoogleSearchのパラメータ 結果はパラメータ名をキーとしたハッシュとして返ってきます。検索されたページのデータはresultElementsというパラメータなので、それをループで回して、URLを表示しています。 SOAP::Liteは処理を全て自動的に行ってくれるので非常に便利なのですが、内部で何が起こっているのかがよくわかりません。そこで、use文において以下のようにデバッグ情報を表示する設定を行うことで、どういう情報がやり取りされているのかを知ることができます。
use SOAP::Lite +trace => [qw(debug)];
|
||||||||||||||||||||||
|
前のページ 1 2 |
||||||||||||||||||||||
|
|
||||||||||||||||||||||
|
||||||||||||||||||||||
|
|
||||||||||||||||||||||
|
||||||||||||||||||||||
|
|
||||||||||||||||||||||
|
||||||||||||||||||||||

