Chrome复制XPath返回空时,使用HtmlAgilityPack

本文关键字:使用 HtmlAgilityPack 复制 XPath 返回 Chrome | 更新日期: 2023-09-27 17:50:47

我遵循这里给出的答案: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,我错过了什么吗?

Chrome复制XPath返回空时,使用HtmlAgilityPack

该表中没有<tbody/>元素,删除/tbody轴步骤,您的查询工作完全正常。参见"为什么我的XPath查询(抓取HTML表)只能在Firebug中工作,而不能在我正在开发的应用程序中工作?"了解详细信息。

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

这个XPath表达式将返回您正在查找的元素:

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