Google検索にブログが4ヶ月待っても表示されないため, Google Indexing APIを試してみました.

Google検索にブログが4ヶ月待っても表示されない

このブログは4ヶ月前に再立ち上げしたのだが, それまで1年ほど閉鎖をしていた. それまでそこそこGoogle検索からのアクセスがあったのだが, ブログを再開してもアクセスが戻ることはなかった.

その原因はGoogle にインデックスされないから. Google Search Consoleから調べたところ, 4ヶ月が経過してもまだ800記事以上ある記事の中で300程度しかそもそもインデックスされていない. つまり半分以上がまだそもそもGoogle検索に表示されない.

改善しようとしてsitemapを毎日送信してみたり祈りを捧げたりしたのだがダメだった. いや, 1ヶ月で30くらいはインデックスの記事数は増えていた. 全くGoogleのクローラーが来てくれないわけではない. しかし圧倒的にクローラーが来てくれない. 1日1記事のインデックスでは我慢ができません!

強制的にGoogleにインデックスする方法はないか調べたところ, Google Indexing APIというものを知ったので試してみた.

Google Indexing APIでGoogleクローラーにプログラムから訪問を依頼する

Google Indexing APIを利用するとGoogleのクローラーにサイトを巡回してもらうようにリクエストを送ることができる.

Indexing APIでできることは,

  • URLを更新する
  • URLを削除する
  • リクエストのステータスを取得する
  • インデックス登録の一括リクエストを送信する

もちろんこれはAPIをつかわなくてもGoogle Search Consoleからボタンを押すことでリクエストをすることができる. しかしわたしの状況のように500記事くらいを依頼したい場合はボタンを押す方法は現実的でないのでプログラムでなんとか解決したい. そこでAPIを叩くのだ.

うわさではIndexing APIで直接URLを指定するとあっという間にクローラーが対応してくれるとか. たしかにGoogle Search Consoleで個別にURLを指定するとインデックスされた実際の経験がありそれとリンクする. サイトマップなんていくら送信してもシカトされ続けている.

Indexing APIの使い方

他のGoogle Cloudのサービスと同様に予めサービスアカウントを登録してそれに紐づくcredentialsを利用して認証してAPIをつかう.

RESTと各種言語のクライアントSDKでAPIを叩ける. 具体的なRESTの送信方法は以下を参照.

ref. Indexing API の使用

batchリクエストについてはgoogle-api-clientで提供されているbatch機能と組み合わせて使うことが必要.

ClojureでIndexing APIを叩いてみた

ここからは実践編. 最近熱を入れているClojureでIndexing APIを叩いてみた.

GitHub - tsu-nera/google-indexing-api-clj

Clojureみたいなマイナーな言語だとSDKはないのだが, ClojureはJavaのライブラリを呼べるので google-api-java-client を利用した. ClojureはJavaという巨人の肩に乗れば大抵のことはできるのでそこはよいね!

google-java-api-client-services という上位互換ライブラリもあるのだが, どうもドキュメントがよくわからない. そもそもapi-clientとapi-client-servicesの違いがいまいちよくわからず後者が前者のwrapperのようだが, Googleのサービスもマイナーなものだと情報があまりないのでもはやどららのライブラリが適しているかはStackOverflow次第かもしれない.


ただClojureの課題としてはインターフェイスの実装が必要なものがいまいちうまく使えない(自分のスキルの問題かも). 今回の場合, batchリクエストのためには BatchCallback というインタフェースをつかう必要が合ったが対応を見送った. 代替としてバッチ処理はせずに毎日コツコツインデックスを依頼することにした. だいたい1日200リクエストの制限があるようだ.

Indexing APIをアフィリエイトの武器にしたい

サイトを新規に立ち上げたらGoogleからインデックスが初期はされないのでアフィリエイトの収益がでるまでは時間がかかるというのが通説だが, Indexing APIを使えばその常識が変わるかも(今でなくても将来).

現在アフィリエイトに力を入れているが, こういうプログラミングでしかできないハッキング的な武器を集めていきたい. それは普通の人が容易に真似できないからこそ自分だけの強みになる.

そして以前はほったらかしでも3000円くらいは収益が上がっていたこのサイトも現在300円くらいのクソい状況をなんとかIndexing APIで改善したい. そもそもクソい記事をなんとかするべきかもしれないがな.