JavaScriptで本文抽出「ExtractContentJS」
ExtractContentJSはJavaScript製のオープンソース・ソフトウェア。ブログやWebサイトのデータを集積して、そこから情報を吸い出して何らかのサイトを構築するというサービスは多い。その時重要になるのが特定URLからの本文抽出だ。サイドバーやヘッダーなど余計な情報を省くことでより意味のあるコンテンツが得られるようになる。
画面下の文字列が本文抽出した結果
Rubyであれば以前紹介したExtractcontentというライブラリがある。そしてそれをベースのはてなにてJavaScript実装したのがExtractContentJSだ。JavaScriptベースの実装とあって、クライアントベースで抽出を行いたいという時に使えそうなライブラリだ。
使い方は簡単で、ExtractContentJSのオブジェクトを作ったら現在表示されているページのオブジェクト(document)を渡すだけで良い。解析に成功すればタイトル、コンテンツ、URLなどが抽出される。さらにライブラリとしてお勧めタグをリストアップするライブラリもある。
アルゴリズムは複数考えられているが、現時点ではHeuristics(経験則)というものだけだ。他にDescription、Scraper、GoogleAdsenceといった方式が想定されている。自動化する際にはサーバサイドが便利だが、Webアプリケーションをはじめブラウザ上で何らかの操作をしたい場合にはExtractContentJSが便利そうだ。
hatena’s extract-content-javascript at master - GitHub