みんなのちからになりたい

コピペでブログラムつくっていきたい

cheerio-httpcliでgoogleの検索結果件数を取得する

Google Custom Search API を使う - みんなのちからになりたいで件数取得できたけどあまりにもかけ離れてるので、googleの検索結果のresultStatsを直で取ってくる方法に変えた。

cheerio-httpcli入れる

普通にnpmで入れるなりpackage.jsonに書くなりする。

npm install cheerio-httpcli

googleにぶん投げて件数をscrapingする

resultStatsに「約 24,200,000 件 (0.46 秒) 」みたいに入ってくるのでそれをただ単に取ってくる。
戻り値でPromise返してくれるので便利。

var cheerio = require('cheerio-httpcli');

var word = 'ジャンボ鶴田 猪木';

if (process.argv.length > 1)
  word = process.argv[2];

cheerio.fetch('https://www.google.co.jp/search', { q: word })
.then(function (result) {
  console.log('search:' + word + '\r\nresult:' + result.$('#resultStats').text().replace(/約\s(.+)\s件.+/,"$1"));
})
.catch(function (err) {
  console.log(err);
})
.finally(function () {
  console.log('done');
});

適当にgscount.jsみたいな名前で保存して実行する。

$ node gscount
search:ジャンボ鶴田 猪木
result:112,000

結論

cheerio-httpcli、便利なので使いましょう。

参考

http://qiita.com/ktty1220/items/e9e42247ede476d04ce2 http://rei19.hatenablog.com/entry/2014/05/19/141512