Webクローラーとは?仕組みとクローリングを自動化する方法

Webクローラーのあれこれ

 

 

マーケティング、SEOを担当されている方ならWebクローラーやWebクローリングといった言葉をよく耳にするのではないでしょうか。今回はそんなWebクローラーに関する基礎知識について紹介します。

 

目次

1. Webクローラーとは?

2. Webクローラーボットとは?

3. Webクローラーの仕組み

4. Webクローラーの種類と機能

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

  2) Webクローラーツール(クローリングを自動化する方法)

  3) SEO対策クローラー

5. Webクローラーを活用の注意点

 

 

 

1. Webクローラーとは?

Webクローラー(Web Crawler)、スパイダー(Spider)、または検索エンジンボット(Search Engine Bot)は、インターネット上のあらゆる場所からコンテンツ(公開されているテキスト・画像・動画など)をクローリングし、インデックスを作成します。このようなボットの目的は、Web上のすべてのWebページの内容を学習し、必要なときにその情報をクローリングできるようにすることです。

※クローリングとは、プログラムを経由でWebサイトに自動的にアクセスし、データを取得することを意味する技術用語です。

これらのボットは、ほとんどの場合、検索エンジンによって運営されています。検索エンジンは、Webクローラーが収集したデータに検索アルゴリズムを適用することで、ユーザーの検索クエリに応じて関連するリンクを提供し、ユーザーがGoogleやBing、またはその他の検索エンジンに検索を入力した後に表示されるWebページのリストを生成します。

 

2. Webクローラーボットとは?

Webクローラーボットは、図書館を訪れた人が必要な情報をすばやく簡単に見つけられるように、乱雑な図書館のすべての本を調べて、カタログを作成のようなものです。図書館の本をテーマ別に分類して並べるために、それぞれの本のタイトル、要約、内部の文章の一部を読んで、その本が何についての本なのかを把握します。

しかし、インターネットは図書館のように物理的な書物の山で構成されているわけではないので、必要な情報がすべて適切にインデックスされているのか、あるいは膨大な量の情報が見落とされているのかを判断するのは困難です。
インターネット上のすべての関連情報を見つけるために、Webクローラーボットは、特定の既知のWebページから始めて、そのページから他のページへのハイパーリンクをたどり、その他のページからさらに別のページへのハイパーリンクをたどり、というように作業を進めます。

 

3. Webクローラーの仕組み

インターネットは常に変化し、拡大も続けています。インターネット上にどれだけのWebページがあるかを知ることはできませんので、Webクローラーのボットは既知のURLのリストからスタートします。
クローラーボットは、まずこれらのURLのWebページをクロールします。Webページをクロールすると、他のURLへのハイパーリンクが見つかり、それらを次にクロールするページのリストに追加します。

インターネット上の膨大な数のWebページが検索用にインデックスされることを考えると、このプロセスはほぼ無限に続く可能性があります。
しかし、Webクローラーは、どのページをどのような順番でクロールするか、また、コンテンツの更新をチェックするためにどのくらいの頻度で再クロールするかなどについて、より選択的な一定のポリシーに従います。

ほとんどのWebクローラーは、公開されているインターネット全体をクロールしているわけではなく、そのページにリンクしている他のページの数や、そのページへの訪問者数など、そのページに重要な情報が含まれている可能性を示す要素に基づいて、最初にクロールするページを決定しています。

Web上のコンテンツは、継続的に更新されたり、削除されたり、新しい場所に移動したりしています。Webクローラーは定期的にページを再訪し、コンテンツの最新版がインデックスに登録されていることを確認する必要があります。

また、Webクローラーは、robots.txtプロトコルに基づいてクロールするページを決定することもあります。Webページをクロールする前に、そのページのWebサーバーでホストされているrobots.txtファイルをチェックします。

robots.txtファイルとは、ホストされているWebサイトやアプリケーションにアクセスするボットのルールを指定するテキストファイルです。これらのルールは、ボットがクロールできるページや辿れるリンクを定義します。

例として、Octoparseサイトのrobots.txtファイルをご覧ください。

sitemap

 

これらの要素でWebページからコンテンツをクローリングしてインデックスを作成するという最終的な目的は同じですが、検索エンジンごとにWebクローラーの動作は若干異なります。

 

4. Webクローラーの種類と機能

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

サイトを巡回して、そのサイト内の文字や画像をクローリングして、検索用元データとして蓄積するためのクローラーです。
これはもっとも知れている利用方法です。

主要な検索エンジンのクローラーは以下の通りです。

  • Googlebot(Google検索エンジン
  • Bingbot(マイクロソフトが運営する検索エンジンBing)
  • Yahoo Slurp(Yahoo検索エンジン)
  • Baiduspider(百度、中国の検索エンジン)
  • Yetibot(Naver、韓国の検索エンジン)
  • Yandex Bot(Yandex、ロシアの検索エンジン)

 

2) Webクローラーツール(クローリングを自動化する方法)

Webクローラーツールを使うと、面倒なコピペ作業がなくなり、データ収集が自動化に実現できます。
例として、定点観測と言えば、決まったサイトの、決まったページのみを定期的にクローリングして、サイトの新着情報、更新情報を取得するためのクローラです。

複数の価格サイトから、商品ごとの価格データをクローリングすることで、毎週の価格変動を分析し、価格、価格増減等をまとめた販売戦略資料を自動作成できます。ここでは、「Octoparse」というWebクローラーツールがあります。Octoparseはスケジュールを設定でき、定期的にクローリングを実行できます。それだけでなく、無料でも使えるというメリットがあります。(スケジュールに制限がありますが、ほどんどの機能が使えます。)

Octoparse無料トライアル

 

 

 

3) SEO対策クローラー

SEOにおいて、クローラーはページをインデックスすることで、検索結果にページを表示させるという役割があります。なので、クローラーがサイト内のどのページを読み込んでいるかについては、SEO対策において改善策を練るための指針の1つになります。「Google Search Console」というGoogleが提供している無料ツールがあります。このツールを用いることで、クローラーの行動に関して詳細な情報を入手することが可能です。

 

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

「岡崎図書館事件」を聞いたことがありますか?岡崎市立中央図書館Webサイトから新着図書データを自動でクローリングするプログラムを実行し、同サイトの一部機能を利用できない状態にしたため、利用者の一人が逮捕された事件です。

「Webクローラー」を活用することで、事業、営業、マーケティングを効率的に進めることができるようになります。しかし、Webクローラーを運用するには、注意すべき点があります。

複数のページから情報を抜き出す場合に、連続アクセスするとWebサーバーに負荷をかけてることになります。その場合クローリングされる側の迷惑になったり、DoS攻撃(サーバーに過剰な負荷をかけてサービスを妨害する攻撃)とみなされることがあります。

Webクローリングには、その適用に対処するための明確な法律や用語がありませんが、クローリングを行う際に気を付けなければ違法になってしまう場合が3つあります。

  • 利用規約に違反する
  • サーバに過度の負荷をかける
  • 著作権を侵害する

したがって、サーバーにあまり大きな負荷をかけないこと、不必要なアクションをトリガーしないこと、またそのWebサイトを適切な間隔で繰り返しクローリングできるようにすることが重要です。

 

以上が、Webクローラーの解説、仕組みとクローリングを自動化する方法でした。

 

 

関連記事

Webクローラーツール20選|Webデータの収集を自動化できる

スクレイピングツール30選|初心者でもWebデータを抽出できる

Webスクレイピングの始まりはいつ?これからどうなる?