13

C# アプリケーションで html の要素を簡単に指定できるようにする必要があります。Linq to Sql を使用するだけですが、これは文字列に対して構成可能/シリアル化可能である必要があります。もちろん、XPath を使用することもできますが、現時点では Sizzle のようなものの方が、ほとんどの人にとってより自然です。

シズルセレクターの実装が.Netに存在するかどうか知っている人はいますか?

4

1 に答える 1

19

うん、フィズラー。HtmlAgilityPack に基づいて構築されており、作成者がベータ版であると述べていますが、非常にうまく機能します。主要なプロジェクトの本番環境で使用しています。ドキュメントのサンプル:

// Load the document using HTMLAgilityPack as normal
var html = new HtmlDocument();
html.LoadHtml(@"
  <html>
      <head></head>
      <body>
        <div>
          <p class='content'>Fizzler</p>
          <p>CSS Selector Engine</p></div>
      </body>
  </html>");

// Fizzler for HtmlAgilityPack is implemented as the 
// QuerySelectorAll extension method on HtmlNode

var document = htmlDocument.DocumentNode;

// yields: [<p class="content">Fizzler</p>]
document.QuerySelectorAll(".content"); 

// yields: [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("p");

// yields empty sequence
document.QuerySelectorAll("body>p");

// yields [<p class="content">Fizzler</p>,<p>CSS Selector Engine</p>]
document.QuerySelectorAll("body p");

// yields [<p class="content">Fizzler</p>]
document.QuerySelectorAll("p:first-child");
于 2011-09-11T17:08:21.797 に答える