IPアドレス・ネットマスクの変換・チェック・統合・除外、国判定を簡単に。

こんな機能欲しいけど、自分で作るの面倒くさい!みたいな思いつきを
是非Twitterで意見投げてみてください。
時間は掛かるかもしれませんがコツコツ頑張るかも!?
Twitterリンクは下部)

IPアドレスから地理的位置情報(GeoIPLocation)の検索機能を公開しました。

Google or AdMax Promotion (ipvtop)

【制限・課金もなし!?】Custom Search Site Restricted JSON API なら・Googleカスタム検索エンジン

「Custom Search Site Restricted JSON API」のページに、
魅力的な記述がされてAPIの紹介がされています。
カスタム検索エンジンのサイト内検索利用の上限がない利用方法が認められています。
これまで100クエリ/1dayで制限されていたカスタム検索エンジンAPI利用が上限撤廃で利用できます(条件あり)
記事の更新日も「最終更新日: 7月 12, 2018」となっている為、まだ新しい印象です。
そして、課金に必要なAPIキーの設定もないという事から、
条件によっても課金もないかもしれないです。(人柱中・バグかもしれない)

Custom Search Site Restricted JSON API なら課金制限なしか!?

プロモーション

Google or AdMax Promotion (ipvpos)

本当にそうなのか?と言う点は以下を読めば分かります。

Custom Search Site Restricted JSON API

This document describes how to use the Custom Search Site Restricted JSON API.

About the Custom Search Site Restricted JSON API
If your Custom Search Engine is restricted to only searching specific sites (10 or fewer), you can use the Custom Search Site Restricted JSON API. This API is similar to the JSON Custom Search API except this version has no daily query limit. To use this version, confirm that you see 10 or fewer sites to search in the “Sites to Search” section of your Custom Search Engine control panel, the are no global top level domain patterns, and that “Search the entire web” is set to OFF.

When using the Custom Search Site Restricted JSON API endpoint, be mindful that if your Custom Search Engine configuration is changed so that it does not conform with the site restriction rules above, the Custom Search Site Restricted JSON API may not return the expected results.

Making a request

Making a request to Custom Search Site Restricted JSON API is similar to making a request to JSON Custom Search API; however, the URI is different. The format for the Custom Search Site Restricted JSON API is

https://www.googleapis.com/customsearch/v1/siterestrict?[parameters]

The [parameters] are the same as the JSON Custom Search API parameters

Pricing

Custom Search Site Restricted JSON API requests cost $5 per 1000 queries and there is no daily query limit. You may sign up for billing in the API Console.


(Google訳)

JSON APIのカスタム検索サイトについて

カスタム検索エンジンが特定のサイト(10個以下)の検索に限定されている場合は、カスタム検索サイトのJSON APIを使用できます。 このAPIはJSONカスタム検索APIと似ていますが、このバージョンには日次クエリ制限がありません。 このバージョンを使用するには、カスタム検索エンジンのコントロールパネルの[検索するサイト]セクションで検索するサイトが10個以下で、グローバルトップレベルのドメインパターンがなく[ウェブ全体を検索]が設定されていることを確認してくださいオフにします。

カスタム検索サイトの制限付きJSON APIエンドポイントを使用する場合、カスタム検索エンジンの設定が上記のサイト制限ルールに準拠しないように変更された場合、カスタム検索サイトの制限付きJSON APIは予期した結果を返さない可能性があります。

要求をする

カスタム検索サイトへのリクエストの制限JSON APIの制限は、JSONカスタム検索APIへのリクエストの作成と似ています。 ただし、URIは異なります。 カスタム検索サイトの制限付きJSON APIの形式は次のとおりです。

https://www.googleapis.com/customsearch/v1/siterestrict?[parameters]

[parameters]はJSON Custom Search API のパラメータと同じです

価格設定

カスタム検索サイト制限されたJSON APIリクエストには10​​00クエリあたり5ドルの費用がかかり、毎日のクエリ制限はありません。APIコンソールで請求にサインアップすることができます。

(抜粋引用)Custom Search Site Restricted JSON API  |  Custom Search  |  Google Developers

いやいや、最後に一応、有料って書かれているのですが・・・後述の通り、

 

これまで必要だったAPIキーが不要なURLで呼び出しが可能なのです。

おそらく条件に合致していれば、非課金と思われます。(人柱中)
APIキーを設定していなくて、どうやって請求するの?と言う訳です。(バグじゃなければね)

 

書かれている通り、実際に設定を行います。

といっても、自サイトや特定のサイトを対象に検索利用している場合は、
おそらくこれまでの設定と変わらない事でしょう。

カスタム検索エンジンの新規作成と設定

では条件を満たすカスタム検索エンジンを新たに作成します。
以下にアクセスして新規に作成します。

https://cse.google.com/cse/create/new

検索するサイト、言語、検索エンジンの名前を入力し「作成」をクリックします。

cse_api_call_st01

新しいカスタム検索エンジンの作成・Custom Search Site Restricted JSON API

 

作成が完了したら、次に行う作業の選択肢が表示されます。
ここでは作成状態の確認の為、コントロールパネルを選択します。

cse_api_call_st02

コントロールパネルで設定確認・Custom Search Site Restricted JSON API

 

コントロールパネルで先ほど入力した「検索するサイト」が、
正しく設定されている事を確認し、

また追加して検索したいサイトがあるようなら追加します。(10以下)
またトップレベルドメインパターン(おそらくは、*.jpや*.com、*.netのような広範囲指定と思われます)が、
含まれていない事も併せて確認します。

cse_api_call_st03

検索するサイト確認(10以下,TLDなし)・Custom Search Site Restricted JSON API

 

次にスクロールして下部の「ウェブ全体を検索」がオフ表示になっていることを確認します。
ちなみに今利用しようとしている
「Custom Search Site Restricted JSON API」に関しての情報へのリンクが矢印で示した部分です。

cse_api_call_st04

ウェブ全体検索オフの確認・Custom Search Site Restricted JSON API

 

設定に問題がなければ右側の検索窓にキーワードを入力して、
実際にテスト検索を行って、意図する結果が得られているか確認します。

cse_api_call_st05

テスト実行結果の確認・Custom Search Site Restricted JSON API

 

問題なければAPIに指定する「cxキー」こと「検索エンジンID」をボタンを押して確認します。

cse_api_call_st06

検索エンジンIDの確認・Custom Search Site Restricted JSON API

 

以上で設定は終了です。

ちなみに「Custom Search Site Restricted JSON API」で利用する際に、
APIキー(認証情報)をパラメータに利用すると思っていた為、
念のため、使用する予定のAPIキーの課金状態も確認しました。

ですが、後述の通りAPIキーはパラメータに含まなくても結果を得ることができます。
その為、課金状態は特に意識する必要はなさそうです。

cse_api_call_st07

GoogleCloudAPIで課金無効の確認・Custom Search Site Restricted JSON API

 

ただ、カスタム検索エンジンAPIのトラフィックには、
「search.cse.siterestict.list」というメソッドが表示されトラフィックが検出されていました。
あれこれ試した際に記録されたか(APIキー指定で呼び出した際?)

以下のAPI呼び出しを試した時に記録されたのかは定かではありません。
Using REST to Invoke the API  |  Custom Search  |  Google Developers

cse_api_call_st08

GCPにsiterestrict表示は関係するか?・Custom Search Site Restricted JSON API

 

カスタム検索エンジンの作成が完了しましたので、
取得したcxキーでAPIの呼び出しを行います。

 

Custom Search Site Restricted JSON API 実際の呼び出し例

これ。

単なるURLによるアクセスで、
結果がJSONで戻ると言う事で特に何かをする必要もありません。

検索エンジンIDを取得してURLに指定します。
[parameters]部分はこれまで通りですとのことです。

URLから直接実行し要求する例(非推奨)

https://www.googleapis.com/customsearch/v1/siterestrict?[parameters]

実際には以下のようになりますが、
条件に合致している分には、APIキーがなくてもいいようなのです。

必要なのは「?q=…&cx=…」と2パラメータで動作しています。※2018/07/21現在。
APIキーがないなら、課金も発生しないものと思われます。

本当なんだろうか??バグ?

https://www.googleapis.com/customsearch/v1/siterestrict?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&cx=014810786654675656813:cvpsguito70

 

APIらしくプログラムからの利用例

このURLを利用して、PHPなどからプログラム実行すれば、
目的のサイト内検索は制限なく利用ができることになります。

やる事はURLを変えるだけ。

サンプルソースは以下の様なものです。

 

実際に上記を当サイトから実行すると以下のように確認ができます。

http://ipvx.info/dev/cse_demo_css_rest.php ←このサイトのドメイン

自分のAPIキーかつ、制限なしなので、
偽装する必要も、偽装される必要もないのですが、別ドメインからリファラ偽装で実行してみます。
※問題ありませんが、この場合制限が本当にないなら、偽装する必要もないでしょうね。

http://rensrv.com/dev/cse_demo_css_rest.php ←別サイトのドメイン

 

いかがでしょうか。

これまでのAPIと変わらずJSONで結果が得られます。
URLを変更して「Custom Search Site Restricted JSON API」の

規定通りに要求すれば制限なく実行可能(と言う事のようです)

 

それでもkeyの有無関わらず、検索結果取得上限100件は変わらない

クエリの発行上限は撤廃されているのですが、
1クエリで得られる検索結果は10件です。

次の10件、次の10件と「$queries[“nextPage”][0][“startIndex”]」を頼りに、
次々にページ遷移をしてデータの取得ができます。

しかし、10ページ目が結果を得られる上限になっていて、
10(件) x 10(ページ) = 100(件) がカスタム検索エンジン(API問わず)で得られる
検索結果の上限になっています。

これはカスタム検索エンジンを利用する上の制限です。
回避する方法は今のところなさそうです。

 

このまま利用して、様子を継続して見ていきます。

何かありましたら追ってご紹介いたします。

 

日進月歩、色々なサービスが出てきて、勉強を止める時が一生来ませんね。
死ぬまでプログラム書いているんだろうか。

 


AdMax Promotion

公開日:
最終更新日:2019/06/20

シェア頂けると新機能開発の励みになります!!

最後までお読みいただきありがとうございました。
便利!と思って頂けたらシェアを是非お願いします。
ご意見・ご批判でも感じた事を気にせずご指摘ください。

アカウント新規作成の為、是非フォローもお願いします。(無言OK)

※このページでこんな情報も一緒に見れたら便利!などの
アイディア・ご意見もお聞かせください。

また弊サイトはすべて広告費と個人の自腹にて運営・開発を行っています。
皆様、お仕事中でお忙しいことと存じますが、
ご興味がおありの広告が目に留まりましたら
広告主様のサイトもご覧いただけますと励みになります。

QRコードからもこのURLを開けます。
リンク先URL: https://ipvx.info/provider-ip-zone-search/cse/cs-site-restricted-json-api/


AdMax Promotion

サイト内コンテンツ
すべて展開 | すべて省略

Google or AdMax Promotion (ipvlink)

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です