GoogleAPIを使う。

Google APIを使ってちょっとしたものを作った。
google APIは大雑把に言うと、簡単にgoogleの検索結果を引っ張ってこれるって感じ。
例えば、perlで「はるぷ」のヒット件数を調べようとしたら、

use SOAP::Lite;use Jcode;
my $googleSearch = SOAP::Lite -> service("file:GoogleSearch.wsdl");
my $key='xxxxxxxxxxxxxxxxxxx';
my $results = $googleSearch -> doGoogleSearch($key, jcode("はるぷ")->utf8, 0, 10, "", "", "", "", "UTF-8", "UTF-8");
print "Hit数は ".$results->{"estimatedTotalResultsCount"}."件ですにょ。\n";

みたいな感じ。"key"は、googleで登録して取得する、google APIを使えるようにする個人にひも付けられるもの。
perlで使えるようにするには、Google APIのページに行って、keyをもらってくる。もちろん、googleAPIも拾ってくる。「GoogleSearch.wsdl」を叩くので、コードがあるフォルダと同じとことかに置く。で、SOAP::Liteモジュールを入れる。ダウンロードしてきた「SOAP-Lite-0.55.zip」とかを解凍して、libフォルダとかてきとーにperlのフォルダにコピー。あと、検索語が日本語使う場合はUTF-8で指定が必要なので、Jcodeモジュールとかも入れませう。
で、実際使い方は↓みたいな感じ。

・引数がどうなってるか
doGoogleSearch($key, $query, $start, $maxResults, $filter, $restrict, $safeSearch, $lr, $ie, $oe);
$key:ライセンスキー
$query:検索語(UTF-8)
$start:何件目から検索を開始するか
$maxResults:一度に返す検索結果件数(最大10件)
$filter:似た結果を隠す(true or false)
$restrict:国とかを指定(日本は"countryJP")
$safeSearch:アダルトコンテンツをフィルターするか(true or false)
$lr:検索言語(日本語は"lang_ja"。その他はここ
$ie:入力の文字コード。「All requests to the APIs should be made with UTF-8」と言ってるので「UTF-8」にすべきっぽい
$oe:入力の文字コード。上に同じく「UTF-8

これ以降は書くのめんどいからやめw。あとは、
$results = $googleSearch -> doGoogleSearch(〜);
print $results->{'resultElements'};
print $result->{'URL'};
とかすればおけ。キャッシュ取得は、
$cacheResults = $googleSearch -> doGetCachedPage($key, $URL);