>こんな機能欲しいけど、自分で作るの面倒くさい!みたいな思いつきを是非Twitterで意見投げてみてください。時間は掛かるかもしれませんがコツコツ頑張るかも!?(Twitterリンクは下部)IPアドレスから地理的位置情報(GeoIPLocation)の検索機能を公開しました。(CSE/Googleカスタム検索エンジンAPI)Googleカスタム検索エンジンAPIはプログラムから呼び出す前にWebでテストできます。実際に独自のプログラムから呼び出しがうまくいかない場合の、エラー原因の切り分けに有効です。ここではAPI実行のテスト実行による確認手順をご紹介します。本投稿は以下コンテンツの1記事になります。一連の流れは以下からご確認下さい。途中、ログイン・登録等を促す画面が表示された場合は画面の指示に従ってください。(ipvpos)Googleカスタム検索エンジンのテスト実行は、リファレンスページ内で行う事ができます。APIの入力必須項目は以下の通り、3つです。parameter).(抜粋引用)https://developers.google.com/custom-search/json-api/v1/reference/cse/list?hl=jaリファレンスページの右に表示されている項目(テスト実行)では、APIキーは不要ですのでの2つを入力して実行します。request.(G訳)APIキーデモAPIキーを使用してリクエストを承認する。APIデモ実行確認テスト実行では実際にリファレンスページで入力して実行してみます。CXキーは各自目的にあったCSEを作成しご確認下さい。(CSE/Googleカスタム検索エンジンAPI)ここではクエリ文字列に「株式会社ケイ・オプティコム」と入力しています。※利用しているプロバイダ「eo光」の運営会社さんです。※これは以下でご紹介した「JPNIC」から対象プロバイダのCIDRを検索する手順を、CSEで置き換えているものです。実際の動作は以下でも確認ができます。入力が済んだら、スクロールして下部の「Execute」をクリックして実行します。指定に問題がない場合には、グリーンバーでレスポンス部分が表示されます。APIデモ実行確認この場合、以下の様なレスポンスが得られます。"whois.nic.ad.jp/cgi-bin/whois_gw?key=203.140.64.0/24"}]}例えばCXキーに誤りがあるような場合(以下はCXキー未設定)は以下のように表示されます。APIデモ実行確認しっかりcxキーがエラーだと表示されています。設定ができているか、レスポンスが取れるかという確認ができます。後はプログラムから呼び出してあげるだけです。言えば、URLにアクセスするだけで確認ができます。URLを叩いでブラウザで確認、又はRESTAPIで実行(非推奨)直接、以下リンクをクリックしても動作確認はできるはずです。https://www.googleapis.com/customsearch/v1?key=AIzaSyAnGk3OLeCz2897XOsP2XZTuX3Xb8Y3U3E&cx=014810786654675656813:8jolq19mpc8&q=%E6%A0%AA%E5%BC%8F%E4%BC%9A%E7%A4%BE%E3%82%B1%E3%82%A4%E3%83%BB%E3%82%AA%E3%83%97%E3%83%86%E3%82%A3%E3%82%B3%E3%83%A0これは以下でご紹介しているものからリンクを生成しています。「企業名・IPアドレス」をJPNICのWHOISで一発検索!【機能閉鎖しました】(注意)一般的には「発行されたAPIキー」は公開するべきものではありません。APIキーが知られると言う事は、誰でもこのAPIを実行できることになります。上記のAPIキーではHTTPリファラによる制限をかけています。リファラ偽装は容易にできます。カスタム検索エンジンAPIでは1日100回の検索実行によって無料検索枠を超過します。課金が有効であった場合、他人の検索によって膨大な請求が発生する恐れもあります。今回は動作の確認という意味で、公開しています。お勧めできることでもありません。おかしな挙動、極端なアクセス増が見られる場合には、いつでもこのAPIキーを削除して停止致します。そもそもAPIキーをPHPなどサーバーサイトに移して秘匿として、はたしてbotやクローラなど、非ユーザーによるアクセスが制限できるか?と言えば、非常に難しい課題になりますので、APIキーを公開しない事は大前提ですが、それだから安全とも言えない現状でもあります。課金を有効にして、不正利用なく安全にこうしたAPIを利用するには、もう少し調査、検討が必要だなと感じている次第です。APIキーのリファラ制限だけじゃマズくない?だけど制限できない難しさ。API無料枠と課金については、以下に明記されています。limit.(Google翻訳)価格設定JSONカスタム検索APIは、無料で1日あたり100件の検索クエリを提供します。必要な場合は、APIコンソールで請求することができます。追加のリクエストは1000クエリあたり5ドル、1日あたり最大10kクエリです。APIに興味があるかもしれません。DevelopersなおAPIダッシュボードで確認できる表示として、以下のようにも書かれています。日本の場合、午前0時にリセットされるとされています。時にリセットされます。※太平洋時間(PT):協定世界時(UTC)を8時間遅らせた、主にアメリカ西海岸の地域の標準時。APIからの実行例は、以下サイトで紹介されています。Developers以下の様なサンプルプログラムが紹介されています。src="https://www.googleapis.com/customsearch/v1?key=YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=cars&callback=hndlr"></script></body></html>がっつり、APIキーをここに指定しろと16行目に書かれています。※「key=YOUR-KEY」部分。「APIキーを公開しろと?」という感じです。この場合、無料枠はありませんが、上限もありません。APIリクエストには1000クエリあたり5ドルの費用がかかり、毎日のクエリ制限はありません。APIコンソールで請求にサインアップすることができます。Developersダッシュボードにも以下のように明示されています。クエリを上限とします。日あたりのクエリの上限はありません。APIを使用できます。このAPIはJSONカスタム検索APIと似ていますが、このバージョンには日次クエリ制限がありません。このバージョンを使用するには、カスタム検索エンジンのコントロールパネルの[検索するサイト]セクションで検索するサイトが10個以下で、グローバルトップレベルのドメインパターンがなく、[ウェブ全体を検索]が設定されていることを確認してくださいオフにします。APIは予期した結果を返さない可能性があります。Developers検索するサイトの指定が10以下で、Web全体の検索はOFF。検索するサイトにグローバルトップレベルドメインを含まないことが条件。グローバルトップレベルドメインですので「*.com」や「*.jp」「*.info」といった広範囲のサイト指定は認めないという意味と読み取れます。大丈夫であると考えられます。上限設定もないから安心して利用していいよ。以下のように呼び出せよと。https://www.googleapis.com/customsearch/v1/siterestrict?[parameters]かと。(たぶん?)実際、考えてみれば、不正なアクセスからAPIを守る事は決して容易ではなく、APIキーが知られたから不正な実行を受けるわけではなく、PHPプログラムにAPIキーを秘匿に埋め込み、実行したところで、PHPプログラム自体が、不正な実行であることが判断できなければ、何も守れません。いう意味では、APIキーを秘匿とすれば不正なAPI実行を回避できるわけではないので、こういう公開してしまうアプローチもアリなのかなと思う次第です。APIキーのリファラ制限だけじゃマズくない?だけど制限できない難しさ。実際、このサンプルプログラムを設置すると以下のようになります。カスタム検索エンジンID(cx=....)はサンプルのまま利用させて頂いています。私も当初はずっとレスポンスが0件表示で正しく取得できず、悩みました。大半は「cxキーって何ぞや?」という部分が分かっていなかっただけでした。(CSE/Googleカスタム検索エンジンAPI)また、cvキーを指定するに当たっては、そのcxキーをもつカスタム検索エンジンの動作が正しい必要があります。目的の検索結果が得られるかを、確認したうえでcxキーを指定すると、より確実です。上のように「カスタム検索エンジン」側で表示の確認ができる検索結果を、APIから取得しているにすぎません。第一段階として「カスタム検索エンジン」でデモ検索してご確認をされるとスムーズです。潜在的なバグがないとは言い切れません。その為、ツールを用いた結果については十分検証の上ご利用ください。当サイトおよび、管理人は如何なる損害もその責を負いません。出典・引用の外部著作権者の明記がないものは、すべて管理人による著作物です。当サイトでご紹介しておりますコンテンツの著作権の放棄は致しません。サイト内コンテンツを引用される際にはご連絡は不要です。出典元として当サイト(個別記事)へのリンクをお願いいたします。申し訳ございませんが、無断転載、複製をお断りさせて頂いております。コンテンツを有益であると感じていただけましたら非常に光栄です。ありがとうございます。2018/07/21最終更新日:2019/06/20Tweetシェア頂けると新機能開発の励みになります!!最後までお読みいただきありがとうございました。便利!と思って頂けたらシェアを是非お願いします。ご意見・ご批判でも感じた事を気にせずご指摘ください。アカウント新規作成の為、是非フォローもお願いします。(無言OK)※このページでこんな情報も一緒に見れたら便利!などのアイディア・ご意見もお聞かせください。弊サイトはすべて広告費と個人の自腹にて運営・開発を行っています。皆様、お仕事中でお忙しいことと存じますが、ご興味がおありの広告が目に留まりましたら広告主様のサイトもご覧いただけますと励みになります。ご意見・ご質問はTwitterのご利用が便利です。非公開でのご連絡には「Message」をご利用ください。連絡する(Message)QRコードからもこのURLを開けます。コメントをキャンセルメールアドレスが公開されることはありません。POST大量のデータを含むCSV。...各国のIPアドレス(グローバルIP)が一覧で見られる機能を公開しました。...CIDRをIPアドレスに展開するのは意外と需要があった。