65.9K
CodeProject 正在变化。 阅读更多。
Home

关于 RSS

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.41/5 (15投票s)

2005年4月26日

5分钟阅读

viewsIcon

161890

downloadIcon

1117

什么是 RSS,以及如何使用它来检索信息。

引言

想要更多的流量?寻找一种简单的分发新闻的方式?您需要一个 RSS 新闻源。如今,成千上万的网站使用 RSS 作为“最新动态”机制来吸引流量。RSS 提供了一种监控新鲜内容的方式。RSS 源会突出显示新材料,这样您就不必反复自己检查网站以获取更新。市面上有许多免费和商业的 RSS 阅读器可供下载,它们可以下载并显示 RSS 源。

以下是 RSS 的典型用法示例

  • 作者有一些新内容想发布在他的网站上。
  • 他为内容创建了一个 RSS 频道。
  • 该频道包含他想推广的网页的条目。
  • 该频道可以被远程应用程序读取,并转换为标题和链接。
  • 人们在各种网站上看到链接,点击它们,然后访问原始发布者的网站。

很简单。您只需要您想广播的内容,以及一个 RSS 文本文件。

什么是 RSS?

RSS 最初由 Netscape 发明。他们想要一种 XML 格式,以便他们可以轻松地从其他网站获取新闻报道和信息,并将它们自动添加到他们的网站。RSS(Really Simple Syndication,真正简单的聚合)是一种基于 XML 的格式,用于分发和聚合网络内容(如新闻标题)。所有 RSS 文件都必须符合万维网联盟 (W3C) 网站上发布的 XML 1.0 规范。使用 RSS,网络内容提供商可以轻松创建和分发数据源,其中包含例如新闻链接、标题和摘要。一个称为 RSS 阅读器的程序可以代表用户检查 RSS 源,并显示它找到的任何更新的文章。您可能看到过邀请您“ syndication this site”的小 XML 图标,但这到底意味着什么?安装 RSS 阅读器后,从 RSS 源页面上的某个 XML 按钮复制链接,然后将其粘贴到您选择的阅读器应用程序中。该阅读器应用程序可让您跟踪最新更新,而无需打开实际网站。

创建 RSS 文本文件后,将其注册到各种聚合器,然后等着流量涌入。任何网站现在都可以定期抓取并显示您的源,为您带来流量。更新您的 RSS 文件,所有订阅您源的外部网站都将自动更新。RSS 数据可以流向其他服务,如 PDA、手机等。定期的新闻通讯可以通过 RSS 轻松实现自动化。

用途

虽然标题聚合是最常见的 RSS 用途,但它也用于许多其他目的。它还用于广告列表、食谱、评论以及跟踪软件包的状态。RSS 源在电子商务领域用于传递信息。您可以跟踪热门书籍和最新添加的内容。

搜索引擎 可用于查找 RSS 格式的内容。例如,使用 Google,您可以将“filetype:rss”添加到搜索中,以在.rss 文件中查找搜索词。

基础

以下是 RSS 的基本原理(无论版本如何)

  • 它是 XML。这意味着它必须格式良好,包含 Prolog 和 DTD,并且所有元素都必须已关闭。
  • 文档中的第一个元素是 <rss> 元素。它包含一个强制的 version 属性。
  • 下一个元素是 <channel> 元素。这是所有 RSS 数据的主要容器。
  • <title> 元素是整个网站(如果位于顶部)或当前项目(如果位于 <item> 内)的标题。
  • <link> 元素指示与 RSS 源对应的网页的 URL,或者如果它在 <item> 内,则指向该项目的 URL。
  • <description> 元素描述了 RSS 源或项目。
  • <item> 元素是 RSS 源的核心。它包含您源中的所有标题(<title>)、URL(<link>)和描述。

使用这些基本元素,您可以创建您网站的 RSS 源。但是,每次更新网站时手动创建该源可能会非常繁琐。创建 RSS 源的最佳方法是使用一个工具,该工具可以为您自动创建标题、链接和描述。

RSS 定义了用于共享新闻的 XML 标签。每个 RSS 文本文件都包含关于您网站的静态信息,以及关于您新内容的动态信息,所有这些信息都包含在匹配的开始和结束标签之间。

每个内容都由一个 <item> 标签定义,该标签包含一个标题、URL 和描述。示例如下

<item>
    <title>My Articles</title>
    <link>www.MyCollection.com/articles</link>
    <description>list of Articles written by me.</description>
</item>

RSS 文件结构

RSS 文件由一个 <channel> 元素及其子元素组成。<channel> 包含表示频道元数据的元素,例如 <title><link><description> - 以及频道内容本身,以条目的形式。条目通常构成频道的绝大部分,并包含频繁更改的内容。

一个频道通常有三个元素,提供关于频道本身的 [ ? ] 信息

    <title>: The name of the channel or feed.
    <link>: The URL of the Web site or site area associated with this channel.
    <description>: A brief explanation of what the channel is.

许多频道子元素是可选的。常用的 <image> 元素包含三个必需的子元素

    <url>: The URL of a GIF, JPEG, or PNG image that represents the channel.
    <title>: Describes the image.  
    <link>: The URL of the site. 
    When the channel is rendered as HTML, the image can act as a link to the site.

<image> 还有三个可选的子元素

    <width>: Number indicating the width of the image in pixels. 
      The maximum value is 144 and the default value is 88.
    <height>: Number indicating the height of the image in pixels. 
      The maximum value is 400 and the default value is 31.
    <description>: Contains text that is included in the title attribute 
      of the link that's formed around the image when rendered.

此外,还可以使用许多其他可选的频道元素。其中大多数不言自明

    <language>, <copyright>, <managingEditor>, 
    <webMaster>, <pubDate>, <lastBuildDate>, 
    <category>, <generator>, <docs>, 
    <ttl>:Time to live, a number representing the number of minutes a feed 
    can be cached before it should be refreshed.
    <rating>, <t;textInput>, <skipHours>, <skipDays>.

条目通常是源中最重要的部分。而频道中的其他元素可能会保持不变,条目则很可能频繁更改……您可以根据需要包含任意数量的条目(以前的版本限制为 15 个条目)。

一个 <item> 通常包含三个元素

    <title>: This is the name of the item. List of Elements of Items   
    <link>: This is the URL of the item.
    <description>: Summary.

所有元素都是可选的,但一个条目必须包含 <title><description>

还可以使用其他几个可选的条目元素

    <author>, <category>, <comments>, <enclosure>,
    <guid>: A permanent link that is uniquely tied to the item,
    <pubDate>: When the item was published,
    <source>: The RSS channel that an item comes on.

下面是一个非常基本的示例,展示了条目和图像如何包含在频道中。显示的元素是最常用的频道子元素。

<rss version="2.0">
<channel>
<title>Cool Collections</title>
<link>www.123.com/</link>
<description>Channel Description</description>
<language>en-us</language>
<image>
    <title>Image title</title>
    <url>www.123.com/image1.gif</url>
    <link>www.123.com</link>br>
</image>
<item>
   <title>My Articles<
   <link>www.123.com/Articles/rticle_main.htm</link>
    <description>Summary of the article</description>
</item>
<item>
    <title>My Codes</title> 
    <link>www.123.com/Codes/code_main.htm</link>
    <description>Summary of the code</description>
</item>
</channel>
</rss>

示例应用程序

该应用程序允许生成一个包含基本信息的示例 RSS 文件。该输出文件存储在运行应用程序的目录中。可以在任何 Web 浏览器中验证它。此应用程序中的条目数量限制为三个。如有需要,可以进行扩展。还可以通过一些修改添加更多标签。生成的文件的可用性将导致用户直接获取信息。

© . All rights reserved.