- - PR -
TidyでのDOCTYPE宣言の扱いについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-12-14 15:25
こんにちは。
Tidyについて質問があります。 環境はWinXP Tidyは[04aug2000r7] Javaは[JDK1.4] を使用しています。 現在java+TidyにてHTMLをパースするアプリケーションを開発しています。 その中でHTMLの<!DOCTYPE>宣言を行っていないHTMLをパースした後にDocTypeを取得できてしまう事があります。 色々と試してTidyがDOCTYPEを補完しているのに気づきました。 今の所以下のパターンを確認しています。 DocTypeなし、HTMLにブラウザ固有タグ等を含める→DocType取得できない。 DocTypeなし、HTMLにブラウザ固有タグ等を含めない→4.01 Transitional or Frameset(他にもあると思います。) この補完を行わないTidyの設定や、解決策などありますでしょうか? 宜しくお願いします。 現在おこなっている処理の抜粋 ●初期化部分 Tidy tidy = new Tidy(); Properties p = new Properties(); p.put("tidy-mark", "false"); p.put("quote-marks", "true"); tidy.setConfigurationFromProps(p); tidy.setQuiet(true); tidy.setShowWarnings(true); tidy.setIndentContent(false); tidy.setIndentAttributes(false); tidy.setSmartIndent(false); tidy.setWraplen(0); tidy.setXHTML(false); tidy.setXmlOut(false); tidy.setMakeClean(false); tidy.setCharEncoding(Configuration.RAW); ●パース部分 Document doc = tidy.parseDOM(new ByteArrayInputStream(b), null); DocumentType doctype = doc.getDoctype(); if(doctype != null){ ←ここで<!DOCTYPE>宣言のないHTMLでも取得する doctype.getName(); } |
1