Copie Chrome XPath renvoyant la valeur null lors de l'utilisation de HtmlAgilityPack

c# html-agility-pack xpath

Question

Je suis la réponse donnée ici: https://stackoverflow.com/a/18066671

string Url = "http://www.owgr.com/ranking";
        HtmlWeb web = new HtmlWeb();
        HtmlDocument doc = web.Load(Url);
        string worldRanking = doc.DocumentNode.SelectNodes("//*[@id=\"ranking_table\"]/div[2]/table/tbody/tr[1]/td[1]")[0].InnerText;

Mais le Xpath renvoie une référence null. J'ai essayé plusieurs variantes, mais rien ne fonctionne, je n'ai jamais utilisé XPath auparavant.

Réponse acceptée

Il n'y a pas d' <tbody/> dans cette table, supprimez l'étape /tbody et votre requête fonctionne parfaitement. Voir " Pourquoi ma requête XPath (extraction de tableaux HTML) ne fonctionne-t-elle que dans Firebug, mais pas dans l'application que je développe? " Pour plus de détails.

Conseil supplémentaire: XPath prend également en charge les guillemets simples pour les chaînes, vous n’avez donc pas besoin d’échapper aux guillemets doubles.

Cette expression XPath renvoie l'élément que vous recherchez:

//*[@id='ranking_table']/div[2]/table/tr[1]/td[1]


Related

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