我試圖使用HTML敏捷包從this website刮取價格字段。使用HTML敏捷包的XPath查詢問題
我的代碼如下;
var web = new HtmlWeb();
var doc = web.Load(String.Format(overClockersURL, componentID));
var priceContent = doc.DocumentNode.SelectSingleNode("//*[@id=\"prodprice\"]");
我用Firebug的 「複製爲XPath的」 功能獲得的XPath查詢。
我遇到的問題是,的SelectSingleNode將返回空 - 它似乎並沒有找到查詢指定的元素。我對於爲什麼有點難以理解,但是我沒有太多的XPath經驗,所以我會感謝一些指針,指出我做錯了什麼。
當一個空集合會更好時,HTML Agility Pack返回null是我的一個煩惱。您是否嘗試過試驗XPath並用已知的元素名稱替換「*」,例如如果您知道有一個ID爲「prodprice」的div用「div」替換「*」以查看您是否得到不同的結果? –
對不起,不得不在最後的評論中添加空格,以使星號顯示,因爲它將它們解釋爲斜體標記的開始/結束。 –
Hi @Colin Mackay:我試過「// span [@ id ='prodprice']」,但結果相同 - 返回null:S –