RSS语法简介

前言

在搭建我的博客时,RSS是一种值得一试的为读者提供信息聚合的方式。RSS也被各种博客框架(如Hugo,Hexo,Jekyll等)所支持。在各种博客框架中,RSS文件通常可自动生成。然而仍有一些特定状况下咱们须要对生成的RSS进行定制化,这时咱们就须要对RSS的语法有一个简单的了解。web

所以本篇文章的主要内容就是对RSS及其语法的简要介绍及使用中的注意事项。segmentfault

本文首发于个人我的博客 技术公馆(wcc.im)RSS语法简介

目录

RSS简介

RSS全称为Really Simple Syndication,是一种简单易用的为用户提供信息聚合方式的规范。RSS能够使用户经过RSS客户端接收文章更新等内容,用户能够在不打开网页的状况下收到文章推送,给用户带来更好的用户体验。post

RSS语法简介

RSS的语法较为简单,基于XML 1.0,且应以.xml结尾。由于其基于XML的特色,RSS的语法要求也较为严格,须要较为严谨地遵照。网站

RSS语法示例

接下来以一个很是简单的RSS文件做为示例来进行分析。ui

<?xml version="1.0" encoding="UTF-8" ?>

<rss version="2.0">
<channel>
  <title>技术公馆</title>
  <link>https://wcc.im</link>
  <description>技术公馆</description>

  <item>
    <title>Hello, World!</title>
    <link>https://www.wcc.im/zh/post/hello-world/</link>
    <description>Hello, World!</description>
  </item>

  <item>
    <title>RSS语法简介</title>
    <link>https://www.wcc.im/zh/rss-syntax</link>
    <description>本文的主要内容是对RSS及其语法的简要介绍及使用中的注意事项。</description>
  </item>
</channel>

</rss>

对熟悉XML语法规则的使用者来讲,RSS的语法很是的简洁易懂。示例代码中的第一行是对XML的声明,声明其版本和编码方式。第二行则是对RSS的声明,声明其版本。编码

<channel>...</channel>中的是RSS具体的内容,可将该部分的示例代码分为三大部分。url

<title>技术公馆</title>
<link>https://wcc.im</link>
<description>技术公馆</description>

如上所示的第一部分为该RSS站点的基本信息,除此以外还有版权信息等内容也可添加到此部分,具体内容将会在后文中讲到。须要注意的是<title><link><description>三部分均为必须的。code

<item>
  <title>RSS语法简介</title>
  <link>https://www.wcc.im/zh/rss-syntax</link>
  <description>本文的主要内容是对RSS及其语法的简要介绍及使用中的注意事项。</description>
</item>

除RSS站点的基本信息以外,以上的即为RSS中的一篇文章的基本格式。每个<item>中为一篇文章的内容,通常包含标题,连接,描述等部分。除<item>外,还有<image>等,具体内容也将在后文中提到。

RSS语法列举

除上述示例中的基本语法外,RSS还支持许多其余的语法,如下为部分常见语法的列举。

RSS站点信息

<title><link><description>三部分必须的站点信息外,RSS文件中还有如下属性。

<language>...</language>
<rating>...</rating>
<copyright>...</copyright>
    
<pubDate>...</pubDate>
<lastBuildDate>...</lastBuildDate>
<generator>....</generator>
   
<docs>...</docs>
<cloud>...</cloud>
<ttl>...</ttl>
  
<managingEditor>...</managingEditor>
<webMaster>...</webMaster>

因为此部分较于简单,所以采起表格的方式对其进行解释。

代码块 含义
<language>...</language> 网站语言
<rating>...</rating> PICS评级
<copyright>...</copyright> 版权声明
<pubDate>...</pubDate> 发布日期
<lastBuildDate>...</lastBuildDate> 最后修改日期
<generator>....</generator> 生成者
<docs>...</docs> RSS文档地址
<cloud>...</cloud> 订阅服务器地址
<ttl>...</ttl> 存活时间
<managingEditor>...</managingEditor> 做者联系方式
<webMaster>...</webMaster> 管理员联系方式

RSS忽略更新设置

<skipHours>
  <hour>...</hour>
</skipHours>

<skipDays>
  <day>...</day>
</skipDays>

以上为表示为网站在那一个时间段不会进行更新,<skipHours>中应使用GMT时间。<skipDays>中应为周一至周日中的一个或多个值。

RSS图片内容

<image>
  <title>...</title>
  <url>...</url>
  <link>...</link>

  <width>...</width>
  <height>...</height>
  <description>...</description>
</image>

以上代码为内容是图片时的相关设置。须要注意的是,<title><url>的值是必须的,其他为可选的。

RSS文章内容

<item>
  <title>...</title>
  <link>...</link>
  <description>...</description>

  <author>....</author>
  <category>....</category>
  <comments>....</comments>

  <enclosure ..../>
  <guid>....</guid>
  <pubDate>....</pubDate>

  <source>....</source>
</item>

以上代码为内容是文章时的相关设置。<item>中的值均为可选的。

RSS文本框

<textInput>
  <title>...</title>
  <description>...</description>
  <name>...</name>
       
  <link>...</link>
</textInput>

以上代码为文本框的相关设置。须要注意的是,<textInput>中的全部值都是必须的。

RSS使用中的注意事项

RSS有着能够为用户提供一种简单便捷的信息聚合方式的优势,所以在不少之内容为基础的平台(博客,新闻等)获得了普遍的应用。但同时须要注意的是,因为其形式上的特色,RSS的内容也很容易被爬虫所爬取,进而产生文章被盗用等版权上的问题。

所以在使用中,用户须要综合考量RSS的使用方式,选择最适合本身的方式加以利用。

本文首发于个人我的博客 技术公馆(wcc.im)
原文连接: https://wcc.im/zh/post/rss-syntax/
本博客内文章除特别声明外均为原创,采用 CC BY-NC-SA 4.0 许可协议进行许可。超出 CC BY-NC-SA 4.0 许可协议的使用请联系做者得到受权。
相关文章
相关标签/搜索