人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

googleのキーワード検索でヒット件数を取得できる方法について教えてください。

2500個のキーワードがあって、googleでキーワードを検索したときのヒット件数のリストを作りたいと考えてます。
数が多いので、PHPやエクセルのマクロでプログラムを作成できればと思います。

質問は、googleのヒット件数を取得する方法でお知恵を貸してください。
サンプルプログラムがあると大変嬉しいです。

どうぞよろしくお願いします。

●質問者: jar2
●カテゴリ:コンピュータ インターネット
✍キーワード:Google PHP エクセル キーワード プログラム
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Galapagos
●70ポイント ベストアンサー

PHPスクリプトでつくってみました。

検索対象は日本語のみです。

<?php
//このスクリプトはUTF-8で保存して下さい。
mb_internal_encoding('utf-8');
//検索したいキーワードを配列にしてください。
$keywords = array(
'はてな',
'人力検索'
);
$matches = array();
//ヒット件数の取得
foreach ($keywords as $key) {
 $pat = "/<div id=resultStats>([^<]+)<nobr>/ms";
 $q = urlencode($key);
 $url = 'http://www.google.com/search?hl=ja&lr=lang_ja&q=' . $q;
 $matches[$key] = '取得失敗';
 if (($str = file_get_contents($url)) != FALSE) {
 if (preg_match($pat, $str, $arr) > 0) {
 $v = preg_replace("/[^0-9]+/", '', $arr[1]);
 $matches[$key] = intval($v);
 }
 }
}
//結果表示
echo <<< EOD
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>

EOD;
foreach ($matches as $key=>$val) {
 echo "{$key} = {$val}<br />\n";
}
echo <<< EOD
</body>
</html>

EOD;
?>

参考 「phpによるスクレイピング処理入門

◎質問者からの返答

ありがとうございます。

さっそく活用させていただきます。


2 ● カモザワ
●0ポイント

!↑http://q.hatena.ne.jp/answer

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ