如何使用htmlagilitypack刮取xml文件

asp.net c# html-agility-pack screen-scraping

我需要從http://feeds.feedburner.com/Torrentfreak中抓取一個xml文件,以獲取其鏈接和描述。

我用過這段代碼:

    var webGet = new HtmlWeb();
                var document = webGet.Load("http://feeds.feedburner.com/TechCrunch");
    var TechCrunch = from info in document.DocumentNode.SelectNodes("//channel")
                                 from link in info.SelectNodes("//guid[@isPermaLink='false']")
                                 from content in info.SelectNodes("//description")
     select new
                                 {
                                     LinkURL = info.InnerText,
                                     Content = content.InnerText,

                                 };
lvLinks.DataSource = TechCrunch;
            lvLinks.DataBind(); 

我已經在列表視圖控件中使用它來在asp.net頁面上顯示。運用

    var webGet = new HtmlWeb();
                var document = webGet.Load("http://feeds.feedburner.com/TechCrunch");
    var TechCrunch = from info in document.DocumentNode.SelectNodes("//channel")
                                 from link in info.SelectNodes("//guid[@isPermaLink='false']")
                                 from content in info.SelectNodes("//description")
     select new
                                 {
                                     LinkURL = info.InnerText,
                                     Content = content.InnerText,

                                 };
lvLinks.DataSource = TechCrunch;
            lvLinks.DataBind(); 

但它顯示錯誤

值不能為空。參數名稱:source

有什麼問題 ?是否可以使用HtmlAgilityPack刮取(獲取)xml節點數據?請建議謝謝

一般承認的答案

嘗試使用RSS庫而不是HtmlAgilityPack:

以下是一些可能對您有所幫助的鏈接:


熱門答案

錯誤表示該值為null。所以也有可能

select new
         {
                LinkURL = info.InnerText??string.Empty,
                Content = content.InnerText??string.Empty,

         };

或者在aspx中。我認為它應該是字符串中的減號,如下所示:

select new
         {
                LinkURL = info.InnerText??string.Empty,
                Content = content.InnerText??string.Empty,

         };



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因