Webサイト制作におけるクローラーの活用法
R&D本部 エンジニア 石澤 基当社ではWebサイトの制作における品質管理にクローラーを活用しています。その一例として、巡回型Validatorがあげられます。巡回型Validatorとは、クローラーを用いて制作中のサイトを巡回し、サイトを構成するすべてのページに対して文法的妥当性を検証するためのシステムです。なお、多くのWebサイト管理者の方々にも使っていただけるよう、巡回型Validatorをより使いやすい形にカスタマイズしたものを、Auto Validatorサービスとして提供しています。折しも、本日よりAuto Validator導入キャンペーンを開始しましたので、是非この機会に導入をご検討いただければ幸いです。
巡回型ValidatorやAuto Validatorの開発や運用を行なった経験から、クローラーはWebサイトの制作とその品質管理など、多くの場面で活用できると考えています。そこで本コラムでは、Webサイト制作におけるクローラーの活用法について簡単にまとめてみたいと思います。
クローラーとフィルタ
クローラーとは、リンク情報をもとにWebページを機械的に自動巡回するプログラムです。クローラーを利用することで、Webサイトに含まれるページを自動的に収集することができます。しかし、クローラー自体はWebページを収集する機能しか持たないため、Webサイトの制作やその品質管理には役立てることができません。そこで、Webページからさまざまな情報を抽出したり検証したりする機能を持つ「フィルタ」のような仕組みを用意し、クローラーと組み合わせて使用します。
当社の巡回型ValidatorやAuto Validatorでは、フィルタとしてW3CのMarkup Validatorの検証機能を使用しています。クローラーが収集した複数のWebページに対し、Markup Validatorによる検証機能を適用することで、複数のWebページにおける文法的妥当性の自動検証を実現し、また検証結果の一括表示を可能としています。このように、クローラーにさまざまなフィルタとなる機能を組み合わせることで、クローラーの活用の幅を広げることができます。
Webサイト制作に役立つさまざまなフィルタ
Markup Validatorの検証機能のほかにも、Webサイト制作に役立つフィルタとなる機能は数多くあります。その1つにリンクチェック機能があげられます。リンクチェック機能とは、Webページ内に含まれるリンクを抽出し、それらのリンクが有効であるかを検証するものです。クローラーとリンクチェック機能を組み合わせることで、Webサイト全体のページにリンク切れが発生していないかをすばやく確認することができます。また、複数のページから抽出したリンク情報を統合することにより、ある1つのページが、サイト内のどのページからリンクされているか、といったページ同士のリンクのつながりも把握することができます。
Webサイトの品質管理という面では、画像抽出機能も有用です。画像抽出機能とは、Webページ内に含まれるすべての画像を抽出し、それらの画像のURLが正しく存在するか、画像に対して代替テキストなどの情報が適切に設定されているかなどを検証するものです。クローラーが収集した複数のWebページから、画像の情報や、代替テキストの設定情報を抽出することにより、Webサイトのすべてのページに含まれる画像の状況をすばやく確認することができます。また、事前に画像のURLや代替テキスト情報をファイルにまとめておき、Webページから抽出した情報と比較することで、画像に関連するエラーを自動で検出するといった機能も実現できるのではないでしょうか。
W3CのMarkup Validatorよりも柔軟に文書構造の検証を行ないたいという場合には、スキーマによる検証機能の利用が考えられます。スキーマによる検証機能とは、Schematronなどで記述した独自のスキーマファイルを用いて、Webサイト独自の構造に特化した検証を行なうものです。これにより、例えばWebページ内のあるモジュールに関連するマークアップに誤りがないかといったWebサイト独自の構造にあわせて、文書構造の検証を柔軟に行なうことができます。この検証機能とクローラーを組み合わせることで、Webサイトに含まれるすべてのページの文書構造も柔軟に自動検証することが可能となります。
上記の機能例のほかにも、CSSの検証機能やMicroformatsといったメタデータ抽出機能などのフィルタも、クローラーと組み合わせて使用することで、Webサイトの制作とその品質管理などにおいて役立つのではないかと考えています。
情報の抽出と検証を得意とするクローラー
クローラーやフィルタは、Webページをあくまで「文字列のかたまり」として処理しているにすぎません。そのため、Webページのデザインといった視覚的な情報や、振る舞いなどの動作情報を処理することはできません。しかし、クローラーをさまざまな機能を持つフィルタと組み合わせて用いることで、人間が苦手とする大量のWebページからの情報抽出と、それらの検証処理の自動化を実現することができます。
Newsletter
メールニュースでは、本サイトの更新情報や業界動向などをお伝えしています。ぜひご購読ください。