Google Search APIで検索ヒット数を表示
Google Search APIで検索ヒット数を表示させてみたくて、調べてみました。
その数を%で表示するのも付け足してみました。
こちらとこちら(公式)を参照させて頂きました。
この結果をなんとかしてGoogle Chartに組み込むことはできそうです(が、やれてない)。
<html> <head> <meta charset="UTF-8"> <div id="resultsetumei">結果表示</div> <div id="resultcount">Loading</div> <div id="percentage">Loading</div> <style type="text/css"> #resultsetumei { color:red; font-size: 12pt; font-family: "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN",'メイリオ',Meiryo,sans-serif; font-weight: bold; } #resultcount { color:red; font-size: 20pt; font-family: "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN",'メイリオ',Meiryo,sans-serif; font-weight: bold; } #percentage { color:blue; font-size: 20pt; font-family: "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN",'メイリオ',Meiryo,sans-serif; font-weight: bold; } </style> <script src="https://www.google.com/jsapi" type="text/javascript"></script> <script language="Javascript" type="text/javascript"> google.load('search', '1'); function OnLoad() { // Create a search control var searchControl = new google.search.SearchControl(); searchControl.addSearcher(new google.search.WebSearch()); searchControl.setSearchCompleteCallback(searchControl,showResults); searchControl.setNoResultsString("ヒットしませんでした"); searchControl.draw(document.getElementById("searchcontrol")); searchControl.execute("三国無双7 文若"); } function showResults(seachControl,searcher){ if (searcher.cursor == undefined) { document.getElementById("resultcount").innerHTML = 0; } else { document.getElementById("resultcount").innerHTML = searcher.cursor.estimatedResultCount; //ヒット数(resultcountの中身)を数値に変換 var num1 = Number(document.getElementById("resultcount").innerHTML); //割合を出す(Google検索で「Google」と打ったときのヒット数を参照) var num2 = num1 * 100 / 7650000000; //任意の桁で切り上げる var num3 = num2 * 100000; var num4 = Math.ceil(num3) / 100000; //数値から文字へ変換 String(num4); document.getElementById("percentage").innerHTML = num4 + " %"; } } google.setOnLoadCallback(OnLoad); </script> </head> <body> <!-- searchcontrolは結果そのものを表示、resultcountはヒット数表示 <div id="searchcontrol">Loading</div> --> <div id="resultcount"></div> <div id="percentage"></div> </body> </html>