生成Rss聚合页xml内容信息
Rss是站点与站点之间共享内容的一种简易方式,也称为聚合内容,通常被用于新闻网站,网站提供rss输出,有利于用户发现网站的更新,网站用户可以再客户端借助于类似于资讯阅读器等支持rss的新闻聚合软件。
Rss是基于xml的一种形式,并且所有rss都要遵循W3C站点发布的XML 1.0规范,可以参见以下Rss2.0规范。
Rss 2.0规范
后台代码编写:
1 string xmlpath = @"rss.xml"; 2 protected void Page_Load(object sender, EventArgs e) 3 { 4 if (!IsPostBack) 5 { 6 string strPath = Server.MapPath(".") + xmlpath; 7 8 XmlTextWriter writer = new XmlTextWriter(strPath, Encoding.UTF8); 9 writer.Formatting = Formatting.Indented; 10 writer.WriteStartDocument(); 11 writer.WriteComment("读入RSS"); 12 writer.WriteStartElement("rss"); 13 writer.WriteAttributeString("version", "2.0"); 14 writer.WriteStartElement("channel"); 15 writer.WriteStartElement("title"); 16 writer.WriteCData("新闻要闻-新浪新闻"); 17 writer.WriteEndElement(); 18 writer.WriteStartElement("image"); 19 writer.WriteStartElement("title"); 20 writer.WriteCData("新闻中心"); 21 writer.WriteEndElement(); 22 writer.WriteElementString("link", "http://news.sina.com.cn"); 23 writer.WriteElementString("url", "http://www.sinaimg.cn/home/deco/2009/0330/logo_home_news.gif"); 24 writer.WriteEndElement(); 25 writer.WriteStartElement("description"); 26 writer.WriteCData("新闻中心-新闻要闻"); 27 writer.WriteEndElement(); 28 writer.WriteElementString("link", "http://roll.news.sina.com.cn/s/"); 29 writer.WriteStartElement("language"); 30 writer.WriteString("zh-cn"); 31 writer.WriteEndElement(); 32 writer.WriteStartElement("Copyright"); 33 writer.WriteCData("Copyright 1996 - 2012 SINA Inc. All Rights Reserved"); 34 writer.WriteEndElement(); 35 DataTable dt = ReadData(); 36 for (int i = 0; i < dt.Rows.Count; i++) 37 { 38 string link = dt.Rows[i]["link"].ToString(); 39 string title = dt.Rows[i]["title"].ToString(); 40 string summary = dt.Rows[i]["summary"].ToString(); 41 string author = dt.Rows[i]["author"].ToString(); 42 string content = dt.Rows[i]["content"].ToString(); 43 string published = dt.Rows[i]["published"].ToString(); 44 writer.WriteStartElement("item"); 45 writer.WriteStartElement("title"); 46 writer.WriteString(title); 47 writer.WriteEndElement(); 48 writer.WriteElementString("link", link); 49 writer.WriteElementString("author", author); 50 writer.WriteElementString("summary", summary); 51 writer.WriteStartElement("description"); 52 writer.WriteString(content); 53 writer.WriteEndElement(); 54 writer.WriteElementString("published", published); 55 writer.WriteEndElement(); 56 } 57 writer.WriteEndElement(); 58 writer.WriteEndElement(); 59 writer.WriteEndDocument(); 60 writer.Flush(); 61 writer.Close(); 62 63 XmlDocument document = new XmlDocument(); 64 document.Load(strPath); 65 Response.ContentType = "text/xml"; 66 document.Save(Response.Output); 67 } 68 } 69 public DataTable ReadData() 70 { 71 string connectionString = ConfigurationManager.ConnectionStrings["Conn"].ConnectionString; 72 using (SqlConnection con = new SqlConnection(connectionString)) 73 { 74 SqlCommand cmd = con.CreateCommand(); 75 cmd.CommandText = "SELECT top 10 * FROM RSS WHERE summary='财经要闻汇总' order by [published] desc"; 76 SqlDataAdapter da = new SqlDataAdapter(cmd); 77 DataSet ds = new DataSet(); 78 da.Fill(ds); 79 if (ds == null || ds.Tables.Count <= 0 || ds.Tables[0].Rows.Count <= 0) 80 { 81 return new DataTable(); 82 } 83 return ds.Tables[0]; 84 } 85 }
由于IE7已经支持Rss信息的自动解析,我们能够看到下面的网页效果,否者看到只是xml代码文件。
样式截图:
Rss内容读取
生成Rss聚合页xml内容信息相关推荐
- python生成静态html_python – 从XML内容生成静态HTML站点
我有一个 XML的长文档,我需要从中生成静态HTML页面(通过CD分发).我知道(在不同程度上) JavaScript,PHP和Python.我考虑过的当前选项列在这里: >我不排除JavaSc ...
- Android学习笔记---15_采用Pull解析器解析和生成XML内容
15_采用Pull解析器解析和生成XML内容 -------------------------------------- 使用SAX或者DOM或者pull解析XML文件 -------------- ...
- 如何简单的生成rss地址_什么是RSS(真正的简单企业联合组织)?
如何简单的生成rss地址 RSS or RDF Site Summary or Rich Site Summary or Really Simple Syndication are the same. ...
- RSS订阅(含转载内容)
添加RSS订阅 RSS订阅是站点用来和其他站点之间共享内容的一种简易方式,即Really Simple Syndication(简易信息聚合),如果不会使用,可以参见百度百科:https://baik ...
- java generatorconfig_generatorConfig.xml配置信息详细
mybatis-generator有三种用法:命令行.eclipse插件.maven插件.我的以为maven插件最方便,能够在eclipse/intellij idea等ide上能够通用.html 下 ...
- RSS(Really Simple Syndication)简易信息聚合
简易信息聚合(也叫聚合内容)是一种RSS基于XML标准,在互联网上被广泛采用的内容包装和投递协议.RSS(Really Simple Syndication)是一种描述和同步网站内容的格式,是使用最广 ...
- python爬取喜马拉雅收费_python 爬取喜马拉雅节目生成RSS Feed
记录于:2020年12月03日 用了N年的手机在经历N次掉落之后终于扛不住了,后背都张嘴了,估计再摔一次电池都能飞出来. 换了手机,由于之前有听喜马拉雅的习惯,但是手机里自带有播客软件,强迫症逼着我不 ...
- python比较两个xml_python比较2个xml内容的方法
python比较2个xml内容的方法 发布于 2015-10-04 17:26:38 | 145 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对象.解释型 ...
- 根据已有项目jar文件生成maven的pom.xml
2019独角兽企业重金招聘Python工程师标准>>> package demo;import java.io.File; import java.io.FileInputStrea ...
最新文章
- dubbo被阿里放弃原因_中间件小姐姐直播“带货”——阿里程序员必知的插件
- Unity3D专访——真正的面试
- 从hello server开始,到hello client结束
- 如何最大限度提升虚拟内存性能(组图)
- 将1bpp的bmp图像存储为1bpp或者2bpp的tiff格式
- 列表页时间日期标签靠显示html,帝国CMS列表页面list.var分别调用年月日,显示个性时间日期...
- 基于语音识别技术的声控鼠标光标程序设计
- Python 实int型和list相互转换 现把float型列表转换为int型列表 把列表中的数字由float转换为int型...
- 常见的国内外Linux服务器运维面板汇总
- linux 内核配置详解
- 基于ORL库的PCA人脸识别系统matlab实现
- ERROR: Cannot uninstall ‘PyYAML‘. It is a distutils installed project and thus we cannot accurately
- problems encountered during text search
- NOTE【数据分析】置信水平/置信区间
- 零代码上线小布对话技能:技能平台的实践与思考
- oracle 用户被锁住 28000 the account is locked
- python显示gif图片_利用Python制作GIF图片
- 脱离文档流和恢复文档流的方法
- 手机电子邮件用outlook登录
- python学习------面向对象的程序设计