2013-07-27 177 views
0

我試圖從這裏http://www.forexfactory.com/calendar.phpHtmAgilityPack沒有返回的所有節點

抽取數據這裏是我的代碼

 var parser = new HtmlDocument(); 
     parser.LoadHtml(html); 

     var datas = parser.DocumentNode.SelectNodes("//tr/@data-eventid"); 

其中html從上面的鏈接下載。

問題是,檢索到的節點不一致。在調試器下,它只返回14個節點,而其他的則以某種方式出錯(出現爲?)。但在QuickWatch窗口下,它將返回所有節點。我不太清楚爲什麼會發生這種情況。

即使我使用chrome控制檯,它也會檢索所有節點,所以標記是正確的。在Chrome控制檯中使用$x("//tr/@data-eventid")

Not okay Okay

+0

不知道你有什麼確切的問題......調試程序有很多「隨機」的限制,以保持它的有點快(像沒有enumrations ...的自動擴展)和不同的窗口(即時,手錶,地方,hover-過去,...)可能有不同的限制太......如果你不喜歡特別調試窗口試試其他的(即關注似乎在這種情況下要爲你工作),或寫自己的瀏覽器... –

+0

@AlexeiLevenkov我只是意識到這是一個很愚蠢的問題。 ?意味着該項目還沒有被迭代。我認爲'HtmlAgilityPack'有一些錯誤。如果你能在下面回答,我會接受它。 –

回答

0

你看到的是調試器特定的行爲,很可能是數據本身是好的。調試器有很多「隨機」限制來保持它有點快(像沒有自動擴展的枚舉......)和不同的窗口(即時,手錶,本地,懸停,...)可能有不同也限制。

如果你不喜歡特別調試窗口試試其他的(即關注似乎在這種情況下要爲你工作)或編寫自己的visualizer