Chrome拷贝XPath在使用HtmlAgilityPack时返回null

时间:2014-03-18 19:05:57

标签: c# xpath html-agility-pack

我按照此处给出的答案: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;

但是Xpath返回一个空引用。 我尝试了几种不同但没有任何工作,我之前从未使用过XPath,我错过了什么?

1 个答案:

答案 0 :(得分:2)

该表中没有<tbody/>元素,删除/tbody轴步骤,您的查询完全正常。见&#34; Why does my XPath query (scraping HTML tables) only work in Firebug, but not the application I'm developing?&#34;详情。

附加提示:XPath还支持字符串的单引号,因此您不需要转义双引号。

此XPath表达式将返回您正在寻找的元素:

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