2017-06-19 59 views
1

我想提取不是整個網頁,但只有一個類的文本,我還沒有找到如何爲我的代碼做到這一點。我想從TD類文本= 「結果中性」 這是HTML代碼:如何從特定的HTML類提取數據敏捷包

<td class="result-neutral" xseid="xz1nBfht"><a href="/hockey/russia/khl/ska-st-petersburg-metallurg-magnitogorsk-xz1nBfht/">3 - 2 </a></td> 

現在我有Sych發表一個C#代碼(Info是一個文本框的名稱):

HtmlAgilityPack.HtmlDocument doc = new HtmlDocument(); 
     HtmlWeb hw = new HtmlWeb(); 
     doc = hw.Load("http://www.sportstats.com/hockey/russia/detail/ska-st-petersburg-zVJwe4ER/"); 
     var nodes = doc.DocumentNode.Descendants("td"); 
string result = ""; 
     foreach (var item in nodes) 
     { 
      result += item.InnerText+Environment.NewLine; 
     } 
     Info.Text = result; 

    } 

要說實話,我還是得到了高分,這在上面的例子中是3-2

+0

您可以嘗試以下鏈接:https://stackoverflow.com/questions/13771083/html-agility-pack-get-all-elements-by-class –

回答

0

我猜的網站正在使用AJAX來加載得分,所以它不會對HTMLAgilityPack時可用你的U他們的.Load()

也許您可以使用C#中的WebBrowser對象先加載頁面,然後使用HAP加載內容。有很多這方面的例子。

希望它有幫助!

+0

謝謝!你是對的,這段代碼適用於其他網頁 –