2014-10-01 257 views
0

我正在爲Windows Phone 8.1做一個Silverlight項目,我真的無法理解如何解析單個網頁。我的代碼是這樣的:Html解析Windows Phone Silverlight 8.1

var html = @"My Web SIte Url"; 
//It works if the html var contains the actual code and not the url 
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument(); 
htmlDoc.LoadHtml(html); 
//If i use this line, i get an error on new HtmlWeb() 
var htmlDoc = new HtmlWeb().Load(html); 
if (htmlDoc.ParseErrors != null && htmlDoc.ParseErrors.Count() > 0) 
{ 
    // Handle any parse errors as required 
} 
else 
{ 
    if (htmlDoc.DocumentNode != null) 
    { 
     //I'm trying to get the first link for now 
     HtmlAgilityPack.HtmlNode aNode = htmlDoc.DocumentNode.Descendants("a").FirstOrDefault(); 
     if (aNode != null) 
     { 
      string first = aNode.GetAttributeValue("title", "null"); 
      string value = aNode.InnerText; 
      Console.WriteLine(first); 
      Console.WriteLine(value); 
      Console.WriteLine(aNode.OuterHtml); 
     } 
    } 
} 

如果我使用htmlDoc.LoadHtml(html);,我可以得到它只能工作,如果我有內部html的HTML代碼。如果我使用var htmlDoc = new HtmlWeb().Load(html);,則會顯示錯誤信息,說我缺少使用語句。你能幫我嗎?

回答

-1

您錯過了一條using語句。這首先是錯誤告訴你的。

嘗試

new HtmlAgilityPack.HtmlWeb().Load(html); 

或與其他引用類的頂部添加

using HtmlAgilityPack; 

+0

不,Windows Phone的錯誤相同。 – 2014-10-01 16:46:58

相關問題