Javaで実装されたHTMLパーサの性能や使い勝手を比べてみるよん


XSS対策として入力値チェックライブラリを考えているんですが、入力値としてHTMLを許可する場合、これを解析してなんとかならんもんかと思ってたりします。

スポンサーリンク

JavaのHTMLパーサ

XMLスキーマとかも使えそうなもんですが、柔軟になる分、ユーザはXMLスキーマの書き方を覚えなければならないわけで、いろんなチェックを、フィルタを通すように使える設計で作っておいて、「IE8がでたー!」となったときでも「IE8Filter」を追加で作って、フィルタに追加するだけー・・・とかにしようかと。

調べてみると、いがぴょんさんのJavaで実装された HTML Parser (HTMLパーサ) を調べてみましたがとても素敵です。これにパフォーマンスとか、使い勝手を加えてまとめてみます。

今回、Google先生や、いがぴょんさんも言及しているOpen Source HTML Parsers in Javaから、以下を調査対象とした。結果はそれぞれまとめていき、結果はまとめページに載せる予定です。

名前URL調査結果
HTML Parserhttp://htmlparser.sourceforge.net/Maybe Comming Soon.
Jericho HTML Parserhttp://jericho.htmlparser.net/docs/index.htmlMaybe Comming Soon.
javax.swing.text.html.parser.Parserhttp://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/javax/swing/text/html/parser/Parser.htmlMaybe Comming Soon.
Java Mozilla Html Parserhttp://mozillaparser.sourceforge.net/Maybe Comming Soon.
CyberNeko HTML Parserhttp://sourceforge.net/projects/nekohtml/Maybe Comming Soon.
JTidyhttp://sourceforge.net/projects/jtidy/Maybe Comming Soon.
The Validator.nu HTML Parserhttp://about.validator.nu/htmlparser/Maybe Comming Soon.
TagSouphttp://mercury.ccil.org/~cowan/XML/tagsoup/Maybe Comming Soon.
HotSAXhttp://hotsax.sourceforge.net/Maybe Comming Soon.
Cobra: Java HTML Renderer & Parserhttp://lobobrowser.org/cobra.jspMaybe Comming Soon.
HtmlCleanerhttp://htmlcleaner.sourceforge.net/Maybe Comming Soon.
VietSpider HTMLParserhttps://sourceforge.net/projects/binhgiang/Maybe Comming Soon.
タイトルとURLをコピーしました