HTMLパースとは、HTML文法規則にのっとった文字列を、その文法に基づいて字句解析し、意味や構造を解釈することをいい、HTMLパースを行うプログラムのことをHTMLパーサといいます。
HTMLパーサによるHTML構造の把握
検索エンジンはWebページ内に書かれる情報を元にクローリングを行います。そのためには、Webページを記述するHTMLソースを解析する必要があります。このHTMLの解析作業のことをHTMLパースといい、それを行うプログラムがHTMLパーサです。
HTMLパーサは、HTMLの文法規則に基づいてWebページの内容を解析し、意味や構造を解釈するプログラムです。検索エンジンは、HTMLパーサーによって分類された情報をもとに、ページの掲載内容と構造の理解を行います。
文法規則に則ったページの解析
HTMLパーサーは、HTMLの文法を理解し、Webページのソース内に記述される情報を適切に分類します。例えば、
<a href="URI">text</a>
として指定される情報はハイパーリンクとして、
<img src="URI" alt="name" />
として指定される情報は画像であると分類します。
HTMLパーサーはソースに沿った解析を行います。そのため、ビジュアルなWebブラウザでの表示状態とは無関係に情報を取得します。例えば、スタイルシートで画面レイアウトを大幅に変えたり、画像を使用したりしても、ソース上の記述順に沿って解析し、単に画像があると認識するだけです。
文法エラーで解析に不具合を生じる可能性
HTMLパーサーはHTMLの文法に沿った解析作業を行うため、HTMLにあまりにもイレギュラーな文法エラーがあった場合には、正しく情報を解析することができない可能性があります。タグの閉じ忘れなどの軽微なエラーであれば、HTMLタグ解析ツールで確認することもできます。
クローラーに正常なクローリングを行わせるためには、できる限りエラーの少ない正確なHTMLコーディングが重要です。多くのブラウザが多少のHTMLエラーを補正して画面をレンダリングしてくれるのと同様に、クローラーのパーサも多少のエラーには寛容ですが、制作者が正確さを意識しておくことは重要です。