2012-07-11 101 views
0

我試圖提取div標籤內的內容idjob_title1在html頁面中。我正在使用htmlagilitypack來獲取數據。這裏是我的代碼從html頁面提取內容

 var obj = new HtmlWeb(); 
     var document = obj.Load("url of website "); 

     var bold = document.DocumentNode.SelectNodes("//div[@class='job_title1']"); 

     foreach (var i in document.DocumentNode.SelectNodes("//div[@class='job_title1']")) 
     { 
      Response.Write(i.InnerHtml); 
     } 

當我試圖運行此代碼時,我在foreach中發現錯誤,說對象引用未設置爲對象的實例。請幫我解決這個問題。

+0

問:這是什麼語言?你的標籤說的是C#...但是... – paulsm4 2012-07-11 05:41:43

+0

ANS:@ paulsm4:看純c#:) – 2012-07-11 05:42:38

+0

他正在使用C#,C#4.0支持延遲類型。我個人從來不喜歡那個,除了複雜的linq結果 – 2012-07-11 05:42:44

回答

0

檢查if null這樣的:

var nodes = document.DocumentNode.SelectNodes("//div[@class='job_title1']"); 

if(nodes != null) 
    foreach (var i in document.DocumentNode.SelectNodes("//div[@class='job_title1']" 
    ... 

編輯:使用\"代替'

+0

是的,節點是空的。我對此很陌生,所以請告訴我爲什麼值不會在節點內獲取。如何獲得該div標籤內的值。 – Maddy 2012-07-11 06:18:04

+0

你可以添加你的HTML樣本嗎? – Ria 2012-07-11 06:20:46

+0

我想要下面的html的div標籤內容。

MS CRM 4.0, MS CRM 2011, PHP, SQl server, My SQL, SSRS

MCA (Computers), Amity Business School

Last Active: 15th Jun 2012
Resume ID: 23961482
s3infotech
\t Annual Salary: 2.40 lacs
\t Exp: 2Years
\t Preferred Location: Anywhere
\t
Maddy 2012-07-11 06:39:44

1

你說: 「與ID job_title1 div標籤」,不應該的XPath :

document.DocumentNode.SelectNodes("//div[@id='job_title1']")