Ниже var divs = doc.DocumentNode.SelectNodes("//div[contains(@class,'span12')]");
вы можете добавить следующий код.
var autoNodes = new List<HtmlNode>();
foreach (var div in divs)
{
if (div.ChildNodes.Any(c => c.InnerText.Contains("Automotive Brands")))
{
autoNodes.Add(div);
}
}
var links = new List<KeyValuePair<string, string>>();
foreach (var node in autoNodes)
{
var nodeLinks = node.Descendants().Where(c => c.Name.Equals("a")
&& c.Attributes["href"].Value.Contains("brands")
&& !string.IsNullOrEmpty(c.InnerText.Trim()));
links.AddRange(nodeLinks.Select(nl =>
new KeyValuePair<string, string>(nl.Attributes["href"].Value, nl.InnerText)));
}
Это читаемая версия.
Вы можете преобразовать его в
var autoNodes = divs.Where(div => div.ChildNodes.Any(c => c.InnerText.Contains("Automotive Brands"))).ToList();
, если хотите.