2013.09.13

マーケティングに使えるって知ってた?クローラのあれこれ

マーケティングに使えるって知ってた?クローラのあれこれ

本記事では、webページ巡回ツール、通称「クローラ」について紹介します。

クローラと言えば、検索エンジンのBOTというイメージが強いと思いますが、それだけじゃありません。専門分野に特化して情報収取をしたり、企業のマーケティング活動で利用されていたりします。 実現する技術基盤なども加えて、もろもろを紹介します。

クローラとは?

webクローラの定義についてはe-Wordsにて詳しく解説されていますが、簡単に説明すると「指定されたURL(そこからリンクする関連URLも)を、システムが自動で巡回して、サイトの情報を収集してくる」だけのツールです。

よって、クローラという単体ツールだけでは、なんら特徴のあるものではありません。

「検索エンジン用クローラ」「市場調査用クローラ」といった、特別な機能は、指定URLをクロールする方法(ルール)だったり、クロールした後の機能を独自に拡張されることで産みだされています。

どんなクローラがあるの?

クローラ自体、非常に単純な技術ですので、独自拡張された機能をもとに分類すると、キリがありません。

そこで、代表的なものを4つほどピックアップします。

1.検索エンジン用クローラ

もっとも知れている利用方法ですね。

サイトを巡回して、そのサイト内の文字や画像を収集して、検索用元データとして蓄積するためのクローラです。

2.定点観測クローラ

クローラと言えば、大量にさまざまなサイトの情報を集めるものというイメージがありますが、そうではありません。実は、決まったサイトの、決まったページのみを定期的に巡回して、サイトの新着情報、更新情報を取得するという使い方が、主流です。

一時期、有名になった事件(岡崎図書館事件)のシステムも、このクローラの一種ですね。

3.掲示板・口コミ系サイトのキーワードクローラ

企業が、掲示板の書き込みや、口コミサイトの書き込みをマーケティングに利用する際に、クロールして収集します。

商品名だったり、特定のキーワードにひっかかるようにして、代表的なサイトを回ったり、そこからの関連サイトを自動で探したりもします。この際、ログインが必要なサイト(SNS系)なども、自動ログインして情報収集するクローラもあったりします。

4.SEO対策クローラ

SEOにとってもっとも大切なのは被リンクです。その被リンクの状況把握、制御を行うために、自サイトや関連サイトを定期的に監視したりします。

上手くすれば、どういったサイトのどの辺りに被リンクを増やせば、効果的なのか?といった分析もできます。

どんな技術でできているの?

大体、クローラの使い方は分かってもらったかと思います。

そこで、このクローラがどんな技術でできているかも、簡単に触れておきます。

1.wget

クローラのベース技術であるwgetについて、綺麗にまとめられたサイトがありました。

wgetの詳細な技術情報はこちらをご確認ください。

wgetが超絶便利なwebクローラー、クローリングツールだとは知らなかった・・・!|girigiribauer.com

もっとも簡単に作るのであれば、wgetで十分でしょう。

2.Rubyライブラリ

Rubyのオープンソースで非常にいいツールがあります。

以下のサイトで紹介されているので、サクッと利用してみても面白いかもしれません。

オープンソースのRubyのwebクローラー”Anemone”を使ってみる - プログラマになりたい

3.ブラウザコンポーネント

何でもできるクローラを作ろうとする場合、ブラウザの積んでいる解析エンジンコンポーネントを内部に取りいれたクローラを作る必要があります。

Trident、Gecko、webKitなど、コンポーネントもさまざまあるので、それらの挙動の違いなどを実現しようとすると、大変、ファットなツールになります。

クローラを活用する場合の注意点

クローラを運用するには、注意すべき点があるので、そちらも合わせてご説明しておきます。「一時期、有名になった事件」のようなことを避けるためにも重要なことです。

1.紳士協定の順守

metaタグのnoindex/nofollow、robot.txtで、クロール制限をかけているにもかかわらず、無視するクローラがいます。特別な場合を除き、守るようにしましょう。

また、クロールの回数ですが、常識的には、1日に数回程度に抑えるのが通常でしょう。上記事件で取り上げられている「1秒間に1回のアクセス」は、システム的には大したアクセス数ではなくても、企業のマーケティングデータ(PV数など)を意味のないものにしてしまう脅威です。

2.user-agentの明示

クロールの際、IPアドレスを複数用意して、user-agentを明示していないと、サイト側がコントロールすることができなくなります。サイト運営者からは、嫌われますので、注意してください。

3.無駄なクロールはしない

HTTPヘッダ情報のみを取得して無駄なクロールは避けるようにしましょう。クロール先のためにも、クロールものとリソース的にも、意味があることです。

まとめ

いかがでしたか?クローラについてご理解いただけたでしょうか?

EVERRISEではクローラをはじめとした各種アドテク関連ツールの作成を承っています。

Related Post

関連記事