昨天弄了一天,終於成功解析了南方周末的rss新聞源,因為我做的是例子程式,所以是在控制台下寫的,但基本思路應該是差不多的~~
rss類的設計如下
class rss public struct item }
channel下面包含title和item兩個變數,title存的是該rss源的名稱,item存放的是該rss源中的新聞列表,item裡面的每乙個變數都是struct item型別的。
首先是載入xml文件,.net提供了很多種載入xml的方法,具體的可以參考微軟的幫助手冊
本文採用xmldoucment.load方法,下面是具體的**
xmltextreader reader = new xmltextreader(""); xmldocument xmldoc= new xmldocument(); xmldoc.load(reader);
先寫了乙個foundchildnode(xmlnode node, string name)函式去查詢指定node結點下名稱為name的子節點
private xmlnode foundchildnode(xmlnode node, string name) } return childlnode; }
然後開始遍歷所有結點,找到我們所需要的標籤
xmlnode rssnode = foundchildnode(xmldoc, "rss"); xmlnode channelnode = foundchildnode(rssnode, "channel"); rss.channel channel = new rss.channel(); channel.items = new hashtable(); for (int i = 0; i < channelnode.childnodes.count;i++ ) case "item": }
getrssitem函式是遍歷所有item結點的子節點,然後將相應的內容存入item中,也就是將我們需要的新聞標題,時間,描述等等存入item中。
private rss.item getrssitem(xmlnode node) else if (node.childnodes[i].name == "description") else if (node.childnodes[i].name == "link") else if(node.childnodes[i].name == "author")
else if(node.childnodes[i].name == "pubdate")
} return item; }
最後在控制台下輸出rss內容
static void main(string args) }
console.writeline(item.link);
以上大部分思路都是來自於
本文是在控制台下寫的,請不要隨便複製貼上,請在理解的基礎上靈活運用,我貼出整個**給初學者參考
using system; using system.collections.generic; using system.linq; using system.text; using system.xml; using system.collections; namespace rssclass } return childlnode; } private rss.item getrssitem(xmlnode node) else if (node.childnodes[i].name == "description") else if (node.childnodes[i].name == "link") } return item; } public rss.channel readxml() case "item": } } return channel; } static void main(string args) } } class rss public struct item } }
php rss操作,用PHP解析RSS源
我需要從大約500個url聚合rss內容,而我試圖從這些url獲取內容時,出現了超時 記憶體耗盡錯誤 我嘗試使用 pie庫 是否有任何方法 想法快速從批量 中提取內容?我如何每次都得到新鮮的內容?require once include pie.inc urllist array feed new ...
使用百度新聞RSS
關閉檔案開啟 fclose fp 建立乙個 xml 解析器 parser xml parser create xml parser set option 為指定 xml 解析進行選項設定 xml parser set option parser,xml option skip white,1 xml...
Java 基礎 利用 Rome 載入rss新聞
rome 是乙個很好的,多平台的解析xml的工具,親測可以解析wordpress,網易新聞等 測試的速度不錯,主要是取決於http的速度,http抓取取決於頻寬和 的php生成能力,大小為100ms 6000ms,解析xml在 i3 3217u osx 10.9 下是600 800ms 安裝外部li...