2010-08-26 14 views
2

J'utilise HTMLAgilityPack dans ma demande, et je veux obtenir le nombre de SelectedNodes que le code ci-dessous élément (nœud):Comment obtenir le numéro de compte de SelectedNode avec XPath en C#?

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 était en cours d'exécution avec succès, mais deuxième i préfèrent obtenir une classe spéciale nommée "o" il y avait en erreur.

Je souhaite utiliser .Count mais j'ai reçu une erreur. Aussi foreach boucle en cours d'exécution pour les premiers SelectedNodes que 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

+1

Et l'erreur est ????? –

Répondre

0

Je ne sais pas la manière spécifique HTMLAgilityPack mais XPath simple vous pouvez faire ceci:

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

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