あなたのWebサイトへのアクセスはBotだらけかもしれない? PV数の水増し問題に注意しよう!

ハウツー

WebサイトのPV(ページビュー)数を確認すると不自然に数値が上昇している時間帯はありませんか?Webサイトにアクセスしてくるのは、ユーザだけではありません。Googleをはじめとする各種検索エンジンのクローラー(巡回プログラム)やTwitterなどの有名なサービスから、リファラースパムなど悪質なプログラムまでさまざまです。このようなユーザ以外の処理が自動化されたプログラムをBot(ボット)と呼び、PV数をカウントする場合は、有害・無害に関わらずBotからのアクセスは除外する必要があります。

こちらもオススメ

アクセスログからのユーザとBotの見分け方

BotによるアクセスかどうかはUA(ユーザエージェント)から見分けることができます。UAとはWebサイトにアクセスしてきたアプリケーション情報をサーバに伝えるため識別子です。Webサイトは、各UAに応じて配信内容(コンテンツやデザイン)を変更することもできます。

例えばWindowsのChromeブラウザで一般的なユーザがアクセスした場合のUAは以下になります。

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100

また、GoogleのクローラーBotがアクセスしてきた場合のUAは以下になります。

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

最近では、検索エンジンのクローラー以外にもTwitterなどのSNSサービスからのアクセスが増加しています。例えば、TwitterではURLを投稿した際、TwitterのBotは以下のUAでリンク先にアクセスし、タイトルやサムネイル画像を自動的に取得したTwitter上に表示します。

Twitterbot/1.0

紹介したUAは全体のごく一部です。UA内に「bot」や「crawl」、「spider」といったフレーズが含まれていることが多いので、一度確認してはいかがでしょうか。

 

全体のアクセス数からBotのアクセス数を排除する方法

手動でBotアクセスを排除する

基本的なアクセスの制御にUAを用いる場合は、アクセス数集計の際にホワイトリストにより特定のUAのみ許諾するか、ブラックリストによって特定のUAを排除する必要があります。しかしUAは前述の通りパターンが無数に存在するため、すべて手動で設定するわけにはいきません。

CMSやGAの機能を活用する

一般的なCMS(Content Management System)では、Botによるアクセスを除外する(カウントしない)機能が提供されている場合があります。また、GA(Google アナリティクス)にもBotのフィルタリング機能が標準搭載されているため、この機能を有効にすることで一般的なBotからのアクセスを統計データに反映しないことが可能になります。

注意点:UAは偽装できる

UAを確認することでBotによるWebサイトへのアクセス状況を確認できるとこれまで説明してきましたが、UA自体は各アクセスプログラムにて設定可能なデータであり、簡単に偽装することもできてしまいます。実際にはBotでアクセスしているのにもかかわらず、UAを偽装してブラウザを利用したユーザからのアクセスと見せかけることもできます。残念ながらUA偽造を防ぐ手段はないため、UAを利用したアクセス制御は完璧ではありません。Botによるアクセスが非常に多い場合は、IPアドレスによる制御や各UAの挙動など複数の要素を組み合わせた方法も考慮する必要があります。

こちらもオススメ