如何使用 HTML 敏捷包包含 select 元素或元素?

How to select elements using HTML agility pack include selector element?

select class 元素如何包含此 select 或? 示例:

<div class="bla">
  <p>Some text1</p>
</div>
<div class="bla">
  <p>Some text2</p>
</div>

如果使用

 html.DocumentNode.SelectNodes("//div[@class='bla']")

那么我们只得到 <p>一些文本 1</p><p>一些文本 2</p> 我需要获取 html 包括 select 或这样的元素

<div class="bla">

<p>一些文字</p>

</div>

帮助)))

您可以继续使用 //div[@class='bla'] 选择器并从 OuterHtml 属性 中获取相应 div 的 HTML 标记,例如:

var html = @"<div>
    <div class='bla'>
      <p>Some text1</p>
    </div>
    <div class='bla'>
      <p>Some text2</p>
    </div>
</div>";
var doc = new HtmlDocument();
doc.LoadHtml(html);

var nodes = doc.DocumentNode.SelectNodes("//div[@class='bla']");
foreach(HtmlNode node in nodes)
{
    Console.WriteLine(node.OuterHtml);
    Console.WriteLine();
}

Dotnetfiddle Demo

输出:

<div class='bla'>
      <p>Some text1</p>
    </div>

<div class='bla'>
      <p>Some text2</p>
    </div>