Loading [MathJax]/extensions/tex2jax.js

2014-11-13

C#でのHTML解析はSGMLReaderがいい感じ

C#でHTMLの解析をすることになったので、何かいいライブラリがないか探していましたが見つかりました。 インストール方法は、公式サイトに書いてあるようにNuGetから設定するのがラクですね。簡単なサンプルは下記の通り。下記では、tdタグの中身を取ってきていますが、LINQ形式の検索をすることもできるようです。
Stream st = //ここは何かのストリーム
StreamReader sr = new StreamReader(st);
SgmlReader sgml = new SgmlReader() { InputStream = sr };
sgml.IgnoreDtd = true; // DTDがない場合、無視しないと例外で死ぬらしいです
XDocument xml = XDocument.Load(sgml);
XNamespace ns = "http://www.w3.org/1999/xhtml";
foreach (var item in xml.Descendants(ns + "td")) {
OldIntroFormat intro = new OldIntroFormat();
string temp = item.Value;
}
st.Close();


0 件のコメント:

コメントを投稿