您好,我正在构建一个 Yahoo Pipe 来支持我的 Facebook 粉丝专页。我有很多 RSS 提要流式传输图片,我想将输出限制为每小时一张图片。但是我对管道完全陌生,找不到可以理解的教程。管道看起来像这样
RSS1 RSS2 ... RSSn
| | |
+-----UNION----+
|
PIPE OUTPUT
您好,我正在构建一个 Yahoo Pipe 来支持我的 Facebook 粉丝专页。我有很多 RSS 提要流式传输图片,我想将输出限制为每小时一张图片。但是我对管道完全陌生,找不到可以理解的教程。管道看起来像这样
RSS1 RSS2 ... RSSn
| | |
+-----UNION----+
|
PIPE OUTPUT
您可以使用以下算法做到这一点:
你可以使用这样的管道来实现它:
使用Rename运算符复制pubDate
到,例如,,并带有参数:datepart
item.pubDate
datepart
Truncate datepart
,使用正则表达式运算符,带有参数:
item.datepart
^(.{13}).*
$1
也就是说,由于日期字段表示为YYYY-mm-DDTHH:MM:ssZ
我们采用前 13 个字符来获取日期部分直到小时并丢弃其余部分。例如 if pubDate
was 2013-11-03T13:34:37
then 我们得到2013-11-03T13
.
使用基于的唯一运算符item.datepart
过滤项目
作为一个简单的演示,我为您整理了一个管道,显示了每个月yahoo-pipes
在 stackoverflow 上标记的 1 个问题:
http://pipes.yahoo.com/pipes/pipe.info?_id=72fea3931e145324f308f0d5f6852d93
请注意,根据放置这些元素的位置,您将获得不同的结果。例如,您可以将此逻辑放在联合之后,以每小时从所有源提要的组合中获取一张图像。或者您可以将此逻辑放在您的联合之前,以便每个提要每小时获取一张图像。
您可能还会问,如果每小时有多张图像,会选择哪一张?第一个。我认为默认排序是pubDate。要让 Yahoo Pipes 选择不同的项目,请在Unique之前插入适当的排序运算符。