Comment obtenir le nombre de comptage de SelectedNode avec XPath en C #?

c# count html-agility-pack xpath

Question

J'utilise HTMLAgilityPack dans mon application et je souhaite obtenir le nombre d'éléments (nœuds) de SelectedNodes en tant que code ci-dessous:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(webBrowser1.DocumentText);
var tagListe = doc.DocumentNode.SelectNodes("//a[@href]");
var divListe = doc.DocumentNode.SelectNodes("//div[@class='o']");

Au premier, obtenir un href fonctionnait avec succès, mais le second préférait avoir une classe spéciale nommée "o" il y avait une erreur.

Je veux utiliser .Count mais j'ai une erreur. Aussi, chaque boucle en cours d'exécution pour les premiers noeuds sélectionnés pour lesquels je demande un attribut tags href. Et n'a pas couru pour le filtrage de classe.

Chaud pour obtenir le nombre de doc.DocumentNode.SelectNodes("//div[@class='o']")

Merci caglar

Réponse acceptée

Je ne connais pas la manière spécifique dans HTMLAgilityPack mais en clair XPath, vous pouvez le faire:

count(//div[@class='o'])

Vous pouvez bien ne pas utiliser ce XPath dans .SelectNodes mais il devrait y avoir une méthode comme Evaluate , SelectSingle ou SelectAtom .



Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi