XML 和 RSS
通过RSS,可以将最新的web内容从一个web站点分发到世界各地成千上万的其他web站点。
RSS允许快速浏览新闻和更新。
RSS文档实例
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>W3Schools Home Page</title>
<link>https://www.w3ccoo.com</link>
<description>Free web building tutorials</description>
<item>
<title>RSS Tutorial</title>
<link>https://www.w3ccoo.com/xml/xml_rss.asp</link>
<description>New RSS tutorial on W3Schools</description>
</item>
<item>
<title>XML Tutorial</title>
<link>https://www.w3ccoo.com/xml</link>
<description>New XML tutorial on W3Schools</description>
</item>
</channel>
</rss>
什么是RSS?
- RSS代表非常简单的联合
- RSS允许你联合你的网站内容
- RSS定义了一种共享和查看标题和内容的简单方法
- RSS文件可以自动更新
- RSS允许不同站点的个性化视图
- RSS是用XML编写的
为什么使用RSS?
RSS被设计用来显示选定的数据。
如果没有RSS,用户将不得不每天查看您的站点以获取新的更新。这对于许多用户来说可能太耗时了。有了RSS提要(RSS通常被称为新闻提要或RSS提要),他们可以使用RSS聚合器(一个收集和整理RSS提要的站点或程序)更快地检查您的站点。
由于RSS数据小且加载速度快,因此可以很容易地与手机或PDA等服务一起使用。
具有相似信息的Web环可以很容易地在其网站上共享数据,从而使其更好、更有用。
谁应该使用RSS?
很少更新网站的站长不需要RSS!
RSS对于经常更新的网站很有用,例如:
- 新闻网站-列出标题,日期和描述的新闻
- 公司-列出新闻和新产品
- 日历-列出即将发生的事件和重要的日子
- 站点更改-列出更改的页面或新页面
RSS的好处
以下是使用RSS的一些好处:
选择您的新闻
通过RSS,你可以选择查看你想要的新闻,你感兴趣的新闻和与你的工作相关的新闻。
删除不需要的信息
通过RSS,你可以(最终)将想要的信息和不想要的信息(垃圾邮件)分开!
增加网站流量
通过RSS,你可以创建自己的新闻频道,并将其发布到互联网上!
RSS的历史
- 1997 - UserLand的Dave Winer负责编写脚本新闻。RSS诞生了
- 1999 - Netscape开发了RSS0.90(支持scriptingNews)
- 1999 - Dave Winer开发了scriptingNews 2.0b1(包括rss0.90特性)
- 1999 - Netscape开发了RSS0.91(包括ScriptingNews2.0b1的大部分功能)
- 1999 - UserLand摆脱了scriptingNews,只使用rss0.91
- 1999 - Netscape停止了他们的RSS开发
- 2000 - UserLand发布了官方的rss0.91规范
- 2000 - O'Reilly开发了RSS1.0。此格式使用RDF和名称空间。
- 2000 - UserLand的Dave Winer开发了rss0.92
- 2002 - Dave Winer在离开UserLand后开发了RSS2.0
- 2003 - 正式的rss2.0规范发布了
RSS1.0是使用W3CRDF(资源描述框架)标准开发的唯一版本。
RDF背后的想法是帮助创建语义网。然而,这对于普通用户来说并不重要,但是通过使用web标准,个人和应用程序交换数据将更加容易。
我应该使用什么RSS版本?
rss0.91和rss2.0比rss1.0更容易理解。我们的教程是基于rss2.0的。
rss2.0的语法规则非常简单和严格。
RSS是Web标准吗?
RSS没有官方标准。
- 大约50%的RSS提要使用rss0.91
- 大约25%的人使用rss1.0
- 最后25%分为rss0.9x版本和rss2.0版本
RSS的工作原理
RSS用于在网站之间共享内容。
通过RSS,你可以在一家叫做聚合器的公司注册你的内容。
因此,作为它的一部分:首先,创建一个RSS文档并用.xml扩展名保存它。然后,把文件上传到你的网站上。接下来,向RSS聚合器注册。每天,聚合器都会在注册的网站上搜索RSS文档,验证链接,并显示有关提要的信息,以便客户端可以链接到他们感兴趣的文档。
提示: 阅读我们的RSS发布章节,查看免费的RSS聚合服务。
RSS实例
RSS文档使用自描述的简单语法。
下面是一个简单的RSS文档:
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>W3Schools Home Page</title>
<link>https://www.w3ccoo.com</link>
<description>Free web building tutorials</description>
<item>
<title>RSS Tutorial</title>
<link>https://www.w3ccoo.com/xml/xml_rss.asp</link>
<description>New RSS tutorial on W3Schools</description>
</item>
<item>
<title>XML Tutorial</title>
<link>https://www.w3ccoo.com/xml</link>
<description>New XML tutorial on W3Schools</description>
</item>
</channel>
</rss>
文档中的第一行XML声明定义了XML版本和文档中使用的字符编码。在本例中,文档符合XML的1.0规范,并使用UTF-8字符集。
下一行是RSS声明,它标识这是一个RSS文档(在本例中是rss2.0版)。
下一行包含<channel>元素。此元素用于描述RSS提要。
<channel> 元素有三个必需的子元素:
- <title> - 定义频道的标题(例如,W3Schools主页)
- <link> - 定义指向频道的超链接(例如。https://www.w3ccoo.com)
- <description> - 介绍频道(例如,免费网站建设教程)
每个 <channel>元素可以有一个或多个<item>元素。
每个 <item>元素在RSS提要中定义一篇文章或"story"。
<item> 元素有三个必需的子元素:
- <title> - 定义项目的标题(例如RSS教程)
- <link> - 定义到项目的超链接(例如。https://www.w3ccoo.com/xml/xml_rss.asp)
- <description> - 描述该项目(例如,关于W3Schools的新RSS教程)
最后,最后两行关闭<channel>和<rss>元素。
RSS中的评论
在RSS中编写注释的语法与HTML类似:
<!-- This is an RSS comment -->
RSS是用XML编写的
由于RSS是XML,请记住:
- 所有元素都必须有结束标记
- 元素区分大小写
- 元素必须正确嵌套
- 必须始终引用属性值
RSS <channel> 元素
RSS <channel> 元素描述RSS提要。
查看以下RSS文档:
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>W3Schools Home Page</title>
<link>https://www.w3ccoo.com</link>
<description>Free web building tutorials</description>
<item>
<title>RSS Tutorial</title>
<link>https://www.w3ccoo.com/xml/xml_rss.asp</link>
<description>New RSS tutorial on W3Schools</description>
</item>
</channel>
</rss>
如前所述,<channel>元素描述RSS提要,并具有三个必需的子元素:
- <title> - 定义频道的标题(例如,W3Schools主页)
- <link> - 定义指向频道的超链接(例如。https://www.w3ccoo.com)
- <description> - 介绍频道(例如,免费网站建设教程)
<channel> 元素通常包含一个或多个<item>元素。每个<item>元素在RSS提要中定义一篇文章或"story"。
此外,<channel>还有几个可选的子元素。我们将在下面解释最重要的问题。
<category> 元素
<category> 子元素用于指定提要的类别。
<category> 元素使RSS聚合器能够根据类别对站点进行分组。
上述RSS文档的类别可以是:
<category>Web development</category>
<copyright> 元素
<copyright> 子元素通知受版权保护的材料。
上述RSS文档的版权可能是:
<copyright>2006 Refsnes Data as. All rights reserved.</copyright>
<image> 元素
<image> 子元素允许在聚合器呈现提要时显示图像。
<image> 元素有三个必需的子元素:
- <url> - 定义图像的URL
- <title> - 定义无法显示图像时要显示的文本
- <link> - 定义提供频道的网站的超链接
上面RSS文档的图像可以是:
<image>
<url>https://www.w3ccoo.com/images/logo.gif</url>
<title>W3Schools.com</title>
<link>https://www.w3ccoo.com</link>
</image>
<language> 元素
<language> 子元素用于指定用于编写文档的语言。
<language> 元素使RSS聚合器能够基于语言对站点进行分组。
上述RSS文档的语言可以是:
<language>en-us</language>
<item> 元素
每个 <item>元素在RSS提要中定义一篇文章或"story"。
查看以下RSS文档:
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>W3Schools Home Page</title>
<link>https://www.w3ccoo.com</link>
<description>Free web building tutorials</description>
<item>
<title>RSS Tutorial</title>
<link>https://www.w3ccoo.com/xml/xml_rss.asp</link>
<description>New RSS tutorial on W3Schools</description>
</item>
</channel>
</rss>
如前所述,每个<item>元素在RSS提要中定义一篇文章或"story"。
<item> 元素有三个必需的子元素:
- <title> - 定义项目的标题(例如RSS教程)
- <link> - 定义指向项目的超链接(例如。https://www.w3ccoo.com/xml/xml_rss.asp)
- <description> - 描述该项目(例如,关于W3Schools的新RSS教程)
此外,<item>还有几个可选的子元素。我们将在下面解释最重要的问题。
<author> 元素
<author> 子元素用于指定项目作者的电子邮件地址。
注释: 为了防止垃圾邮件,有些开发人员不包括<author>元素。
上述RSS文档中项目的作者可以是:
<author>hege@refsnesdata.no</author>
<comments> 元素
<comments> 子元素允许项链接到有关该项的注释。
上面RSS文档中的项目注释可以是:
<comments>https://www.w3ccoo.com/comments</comments>
<enclosure> 元素
<enclosure> 子元素允许媒体文件包含在项目中。
<enclosure> 元素有三个必需属性:
- url - 定义媒体文件的URL
- length - 定义媒体文件的长度(字节)
- type - 定义媒体文件的类型
包含在上述RSS文档中的项目中的媒体文件可以是:
<enclosure url="https://www.w3ccoo.com/xml/rss.mp3"
length="5000" type="audio/mpeg" />
把你的RSS提要放到网上
如果其他人无法访问RSS文档,那么拥有RSS文档是没有用的。
现在是时候把你的RSS文件放到网上了。步骤如下:
1. 命名你的RSS文件。请注意,该文件的扩展名必须为.xml。
2. 验证你的RSS文件(一个好的验证器可以在http://www.feedvalidator.org).
3. 将RSS文件上载到web服务器上的web目录。
4. 将小的橙色RSS徽标 或XML徽标按钮复制到您的web目录。
5. 将小橙色的"RSS"或"XML"按钮放在您将向世界提供RSS的页面上(例如,在您的主页上)。然后向链接到RSS文件的按钮添加一个链接。代码如下所示:
<a href="https://www.w3ccoo.com/xml/myfirstrss.xml">
<img src="https://www.w3ccoo.com/xml/pic_rss.gif" width="36" height="14">
</a>.
6. 将您的RSS提要提交到RSS提要目录(您可以通过Google或Yahoo获得"RSS提要目录")。注意!你的源的URL不是你的主页,而是你的源的URL,比如 "https://www.w3ccoo.com/xml/myfirstrss.xml". 以下是免费的RSS聚合服务:
7. 向主要搜索引擎注册您的订阅源:
- Google - http://www.google.com/submityourcontent/website-owner
- Bing - http://www.bing.com/toolbox/submit-site-url
8. 更新你的提要-注册你的RSS提要后,你必须确保你经常更新你的内容,并且你的RSS提要一直可用。
我能自己管理RSS提要吗?
确保您的RSS提要按您想要的方式工作的最好方法是自己管理它。
但是,这可能非常耗时,特别是对于更新量很大的页面。
另一种方法是使用第三方自动RSS。
自动RSS
对于个人网站只需要RSS提要的用户,提供内置RSS服务的一些最流行的博客(Web日志)管理器包括:
RSS阅读器
RSS阅读器用于阅读RSS提要!
RSS阅读器可用于许多不同的设备和操作系统。
有很多不同的RSS阅读器。有些用作web服务,有些仅限于windows(或Mac、PDA或UNIX):
- QuiteRSS - 免费!QuiteRSS是一个开源的、跨平台的RSS/Atom新闻阅读器。它是多功能的,并且有全套的选择。QuietRSS有丰富的社交分享选项(Email/Twitter/Facebook/../Pocket/Etc)。安静是快速启动,导航是快速的
- FeedReader - 免费!简单、直接的提要阅读器,可以轻松处理大量提要。有基本的选择(不是很多令人困惑的选择)。不需要Java。导入或导出OPML文件。在外部浏览器中打开链接的选项
- RssReader - 免费!基于Windows的RSS阅读器。支持RSS版本0.9x、1.0和2.0以及Atom 0.1、0.2和0.3
- blogbotrss - 免费!Internet Explorer和Microsoft Outlook的RSS阅读器插件
提示: 大多数浏览器都有内置的RSS阅读器。如果你去一个提供RSS提要的网站,你会在地址栏或工具栏中看到一个RSS图标RSS。单击图标查看不同提要的列表。选择要阅读的源。
我有一个RSS阅读器。现在怎么办?
单击要阅读的RSS提要旁边的小RSS徽标或XML徽标 按钮。复制您在浏览器窗口中获得的URL并将其粘贴到RSS阅读器中。
RSS实例
这些实例演示了使用RSS阅读器查看结果的RSS。
RSS <channel> 元素
设置所需的频道元素 (<title>, <link>, 和 <description>)
为 RSS 指定类别
指定用于生成 RSS 的程序
将图像添加到 RSS
指定 RSS 的语言
向 RSS 添加文本输入字段
指定不应更新 RSS 的日期
RSS <item> 元素
设置所需的项目元素 (<title>, <link>, 和 <description>)
添加指向有关 RSS 项目的评论的链接
将媒体文件添加到 RSS 项目
为项目指定唯一标识符
指定 RSS 项目的发布日期
为 RSS 项指定第三方来源
RSS参考
RSS <channel> 元素
元素列中的链接指向有关每个特定元素的更多信息。
元素 | 描述 |
---|---|
<category> | 可选。为提要定义一个或多个类别 |
<cloud> | 可选。注册进程以立即通知feed的更新 |
<copyright> | 可选。通知受版权保护的材料 |
<description> | 必要的。描述通道 |
<docs> | 可选。指定源中所用格式的文档的URL |
<generator> | 可选。指定用于生成提要的程序 |
<image> | 可选。允许在聚合器呈现提要时显示图像 |
<language> | 可选。指定源的编写语言 |
<lastBuildDate> | 可选。定义提要内容的上次修改日期 |
<link> | 必要的。定义指向频道的超链接 |
<managingEditor> | 可选。为提要内容的编辑器定义电子邮件地址 |
<pubDate> | 可选。定义提要内容的最后发布日期 |
<rating> | 可选。源的PICS额定值 |
<skipDays> | 可选。指定聚合器应跳过更新源的天数 |
<skipHours> | 可选。指定聚合器应跳过更新源的时间 |
<textInput> | 可选。指定应与提要一起显示的文本输入字段 |
<title> | 必要的。定义频道的标题 |
<ttl> | 可选。指定从源刷新源之前,源可以保持缓存的分钟数 |
<webMaster> | 可选。定义发送给提要的网站管理员的电子邮件地址 |
RSS <item> 元素
元素 | 描述 |
---|---|
<author> | 可选。指定项目作者的电子邮件地址 |
<category> | 可选。定义项目所属的一个或多个类别 |
<comments> | 可选。允许项目链接到有关该项目的评论 |
<description> | 必要的。描述项目 |
<enclosure> | 可选。允许媒体文件包含在项目中 |
<guid> | 可选。定义项目的唯一标识符 |
<link> | 必要的。定义到项目的超链接 |
<pubDate> | 可选。定义项目的最后发布日期 |
<source> | 可选。指定项的第三方源 |
<title> | 必要的。定义项目的标题 |