使用.NET简化RSS操作
在本文开始之前,我们首先有必要了解一下什么是RSS,以及RSS的使用规则。
第一节 RSS 2.0规范
本节来源:http://blogs.law.harvard.edu/tech/rss
译文来源:http://tonyqus.cnblogs.com/archive/2005/01/30/93684.aspx
什么是RSS?
RSS是一种网页内容联合格式(web content sydication format)。
它的名字是Really Simple Syndication的缩写。
RSS是XML的一种。所有的RSS文档都遵循XML 1.0规范,该规范发布在W3C网站上。
在一个RSS文档的开头是一个<rss>节点和一个规定的属性version,该属性规定了该文档将以RSS的哪个版本表示。如果该文档以这个规范来表示,那么它的version属性就必须等于2.0。
在<rss>节点的下一级是一个独立的<channel>节点,该节点包含关于channel的信息和内容。
关于本文档
本文档属于RSS版本为2.0.1。
必需的频道节点
下面有一份必须包含的频道(channel)节点的列表,每一个都有一个简单的描述、一个例子、应该出现的位置和更详细描述的超链接(以http://www.ppurl.com/feed为例)。
元素
描述
范例
title
频道(channel)名称。它可以告诉别人如何访问你的服务。如果你有一个与你的RSS文件内容一致的HTML网站,你的title元素值应该与你的网站的标题相同。
皮皮书屋
link
响应该频道的网站的URL
http://www.ppurl.com
description
关于该频道的描述
这里只有一些还不错的电子书。
可选的频道元素
下面是可选的频道元素(channel)中可以包含的元素列表 :
节点
描述
范例
language
使用的语言。这允许聚合器对所有的意大利语站点分组。
en-us
copyright
版权声明
Copyright 2002, Spartanburg Herald-Journal
managingEditor
内容负责人的Email
geo@herald.com (George Matesky)
webMaster
技术人员的Email
betty@herald.com (Betty Guernsey)
pubDate
内容的发布时间
Sat, 07 Sep 2002 00:00:01 GMT
lastBuildDate
最后更新时间
Sat, 07 Sep 2002 09:42:31 GMT
category
指定该频道所属的一个或多个分类。遵循与item级category元素相同的规则。
<category>Newspapers</category>
generator
生成该频道的程序名称
MightyInHouse Content System v2.3
docs
指向rss格式文档的url地址?
http://blogs.law.harvard.edu/tech/rss
cloud
允许所有进程注册一个cloud用于获得频道的更新通知,并为rss种子实现一个轻量级的发布订阅协议。
<cloud domain="rpc.sys.com" port="80" path="/RPC2" registerProcedure="pingMe" protocol="soap"/>
ttl
ttl是Time to live的缩写。它指示cache的有效保存时间。
<ttl>60</ttl>
image
与频道一起显示的图片地址
rating
该频道的统计图片地址
textInput
指定一个textbox与该频道一起显示
skipHours
告诉使用者哪些时段是可以忽略的
skipDays
告诉使用着哪些天是可以忽略的
以下是频道(channel)元素中几个常用子节点的说明:
<channel>子节点<image>
l <image>是一个可选的<channel>子节点,该节点包含三个必需的子元素和三个可选的子元素。
l <url>是GIF、JPEG或PNG图像文件的URL地址,该图像代表整个频道 。
l <title>用于描述上面的图像,等同于HTML语言中的<img>的alt属性 。
l <link>是要连接的站点的url,当显示频道时,图像的连接指向该站点。
l <title>和<link>应该与频道的<title>和<link>有相同的值。
l 可选的节点包括<width>和<height>,它们是数字类型,指定图像的宽度和高度,单位为像素。
l <description>就是link的TITLE属性中文本,它将在调用网页时显示出来。
备注:
图像宽度的最大值为144,默认值为88
图像高度的最大值为400,默认值为31
<channel>子节点<cloud>
<cloud>是一个可选的<channel>子节点。
它指定一个可以支持rssCloud接口的web服务,rssCloud接口可以用HTTP-POST,XML-RPC或SOAP1.1实现。
它的目的是允许通知注册为cloud的进程频道被更新,从而实现一个轻量级的发布订阅协议。
<cloud domain="rpc.sys.com" port="80" path
补充:软件开发 , C# ,