HtmlAgilityPack搜索行使用下一行

时间:2016-07-04 20:47:39

标签: c# html-agility-pack

我需要一点支持。我抓住了 C#一个网站。这是我需要的简短 HTML

<div class="cf">
  <span class="labelText ohneFeldhilfe">Name</span>
  <p>Firstname Lastname</p>
</div>
<div class="cf">
  <span class="labelText ohneFeldhilfe">Created</span>
  <p>04/04/2016</p>
</div>
<div class="cf">
  <span class="labelText ohneFeldhilfe">Edit</span>
  <p>05/05/2016</p>
</div>

HtmlAgilityPack是否有可能抓住FirstnameLastname?问题是class="cf"class="labelText ohneFeldhilfe"在HTML中不止一次出现。我认为搜索整行<span class="labelText ohneFeldhilfe">Name</span>是必要的。

感谢您的支持

2 个答案:

答案 0 :(得分:1)

您可以使用LINQ或XPath。在这里,我用LINQ完成了它:

(Key, Value)

答案 1 :(得分:0)

我已经解决了。

var paragraphs = document.DocumentNode.Descendants("div")
    .Where(d => d.Attributes.Contains("class") && d.Attributes["class"].Value == "cf");

foreach (var paragraph in paragraphs)
{
  if(paragraph.InnerText.StartsWith("Name")) {
    Console.WriteLine("Found");
  };
}