FEED43 & RSS - 创建免费RSS源说明

FEED43 & RSS - 创建免费RSS源说明

由于使用的bircron服务没有提供rss,正好在练手测试IFTTT同步,需要一个RSS源,用于信息实时推送到twitter.于是这个免费的工具排上用场,遂顺带把rssfeed43的说明一并普及下。

整体根据免费版的情况,适用以下场景:

  • 学习rss
  • 用于获取最新消息
  • 用于获取热点新闻,不超过20条

相关连接

关于RSS

  • xml格式文件,用于向其他网站分发,用于快速浏览新闻

  • rsschannel整体RSS feed描述、item每篇文章或新闻构成,这两部分均需要包含三个元素:

    • title
    • link
    • description
  • 注意事项:

    • 所有的元素必许拥有关闭标签
    • 元素对大小写敏感
    • 元素必需被正确地嵌套
    • 属性值必须带引号
  • 基本实例:

    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <rss version="2.0">
    
    <channel>
    <title>W3School Home Page</title>
    <link>http://www.w3school.com.cn</link>
    <description>Free web building tutorials</description>
    <item>
      <title>RSS Tutorial</title>
      <link>http://www.w3school.com.cn/rss</link>
      <description>New RSS tutorial on W3School</description>
    </item>
    <item>
      <title>XML Tutorial</title>
      <link>http://www.w3school.com.cn/xml</link>
      <description>New XML tutorial on W3School</description>
    </item>
    </channel>
    
    </rss>

FEED43

官网无需注册即可生成免费rss,免费版本有如下说明:

  • 6小时更新一次(可手动更新)
  • 每个channel最多读取20条
  • 源页面不能超过100kb(大于100kb,只拉取100kb部分的内容进行解析)

FEED43实现原理是通过请求页面,抓取页面内容后,根据匹配规则,利用output templates模板将匹配好的代码片段拼接而成,通俗的说就是爬虫

FEED43匹配规则:

语法:

  • {%}:用于抓取显示的内容
  • {*}:空格或换行等无关内容
  • 最终{%}获取到的内容,会按照匹配结果,依次输出为{%1}{%2}...

示例:

  • 页面内容如下:
# 抓取内容如下:

...
<html>
...
...[content goes here]...
...
<body>
...
...[content goes here]...
...
<h1>Weather in Washington</h1>
...
...[content goes here]...
...
<div class="content">
UV Index: 1 Low<br/>
Wind: From SSE at 9 mph<br/>
Humidity: 69%<br/>
Pressure: 30.02 in.<br/>
Dew Point: 46&deg;F<br/>
Visibility: 10.0 miles<br/>
</div>
...
...[content goes here]...
...
</body>
</html>
  • 匹配规则:
<h1>{%}</h1>{*}<div class="content">{%}</div>
  • 获取结果
{%1} = Weather in Washington
{%2} = UV Index: 1 Low<br/> Wind: From SSE at 9 mph<br/> Humidity: 69%<br/> Pressure: 30.02 in.<br/> Dew Point: 46&deg;F<br/> Visibility: 10.0 miles<br/>

完整步骤:

  • Step 1. Specify source page address (URL):输入需要获取的页面,Encoding默认为utf-8,无需设置,点击reload获取

  • Step 2. Define extraction rules定义规则:

    • Global Search Pattern:规则定义范围,可直接输入{%},整页搜索,也可根据实际dom,划取范围
    • Item (repeatable) Search Pattern:设置item,必填:
    <li class="listing_item"><span class="date">{%}</span><a href="{%}" title="{*}" >{%}</a>{*}</li>

    点击extract,测试输出结果。

  • Step 3. Define output format定义输出模板:

    • RSS feed properties:feed信息默认会抓取到,可进行修改
    • RSS item properties:根据步骤二获取结果,自定义{%1},{%2},{%3}位置,如需要添加可选项,如author,可在Item Content Template中增加:
     (author: {%1})

    点击preview更新xml。

  • Step 4. Get your RSS feed直接获取FEED URL

参考连接

*FEED43新手教程:为任意网页定制RSS格式订阅源:图文并茂

@2017-09-09 22:44