博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RSS尝试
阅读量:6090 次
发布时间:2019-06-20

本文共 1817 字,大约阅读时间需要 6 分钟。

笔记:(这个项目很棒,实现了标准的RSS2.0的结构,可惜是没几个站点完整的遵循了这个标准,哪怕是sina,看那么多结构头都大了)、(这个很实际,是个爱好者写的,代码很简单很容易看懂,但是很明显它的架构只适合小东西)、(这个就不用多说了)。

测试要求:1)要求直接读取rss源(这个实现方法很多,标准的是用webclient,我用了简单的load函数,如果是真实的项目的话前者更好)2)正确读取sina和Oblog的源(这一条我测试了下,发现大多的rss源还是遵循rss2.0的标准的,不同的是大多不完整而已)。

测试结果图:

1.这个结果的部分截图

2.这个是结果中去掉description的截图

 

测试代码:

ExpandedBlockStart.gif
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml;
namespace RssRead.test
{
    
public partial class DownLoad : System.Web.UI.Page
    {
        XmlDocument doc;
        
protected void Page_Load(object sender, EventArgs e)
        {
            
string Olink = "http://feed.blueben.cn/";//oblog
            string Slink = "http://blog.sina.com.cn/rss/1255849511.xml";//sina
            ShowBlog(Olink);
            ShowBlog(Slink);
        }
        
private void ShowBlog(string link)
        {
            doc 
= new XmlDocument();
            doc.Load(link);
            
foreach (XmlNode channel in FindNodes("channel"))
            {
                
//channel
                
                Response.Write(
"title:" + channel.SelectSingleNode("title").InnerText);
                ChangeLine();
                Response.Write(
"descriptoin:" + channel.SelectSingleNode("description").InnerText);
                ChangeLine();
                Response.Write(
"link:" + channel.SelectSingleNode("link").InnerText);
                ChangeLine();
                
                
//item
                int i = 1;
                
foreach (XmlNode item in channel.SelectNodes("item"))
                {
                    Response.Write(
string.Format("item{0}", i));
                    ChangeLine();
                    Response.Write(
"title:" + item.SelectSingleNode("title").InnerText);
                    ChangeLine();
                    Response.Write(
"description:" + item.SelectSingleNode("description").InnerText);
                    ChangeLine();
                    Response.Write(
"link:" + item.SelectSingleNode("link").InnerText);
                    ChangeLine();
                    i
++;
                }
            }
            ChangeLine();
        }
        
private XmlNodeList FindNodes(string name)
        {
            
return doc.GetElementsByTagName(name);
        }
        
private void ChangeLine()
        {
            Response.Write(
"<br/>");
        }
    }
}
本文转自today4king博客园博客,原文链接:http://www.cnblogs.com/jinzhao/archive/2009/04/02/1428211.html,如需转载请自行联系原作者
你可能感兴趣的文章
没有显示器的情况下安装和使用树莓派
查看>>
【android】使用handler更新UI
查看>>
mochiweb 源码阅读(十五)
查看>>
前端面试中的常见的算法问题
查看>>
计算机语言的基本理论
查看>>
nodejs流之行读取器例子
查看>>
批量文件重命名工具
查看>>
简单说一下UWP中的JumpList
查看>>
unity将object[]或者string对象转换成枚举enum
查看>>
以太坊系列之六: p2p模块--以太坊源码学习
查看>>
使用scikit-learn解决文本多分类问题(附python演练)
查看>>
2018 年最值得关注的 JavaScript 趋势
查看>>
什么是区块链?超级账本 Brian Behlendorf 从五个方面教你认识
查看>>
Linux中的帮助功能
查看>>
针对Android的Pegasus恶意软件版本和针对iOS的有什么不同?
查看>>
全局探色器
查看>>
Hive Export和Import介绍及操作示例
查看>>
http://mongoexplorer.com/ 一个不错的 mongodb 客户端工具。。。
查看>>
上传jar包到nexus私服
查看>>
Why Namespace? - 每天5分钟玩转 OpenStack(102)
查看>>