0

在 Yahoo Pipes 中,通过使用 Regex 模块,我可以将 item.link .* 替换为 https://www.google.com/webhp#output=search&sclient=psy-ab&q= ${title}

这样做的目的是说提要的标题是“巴拉克奥巴马访问俄克拉荷马”,该标题现在将使用 ${title} 变量链接到谷歌搜索词“巴拉克奥巴马访问俄克拉荷马”。

但我想做的是在描述中添加脚本,这样我就可以使用http://gdata.youtube.com/feeds/api/videos?max的 rss 输出嵌入 youtube 视频-results=1&alt=rss&q= ${title}并以http://www.flickr.com/services/feeds/photos_public.gne?tags= ${title} &format= 的 flickr rss 输出显示相关标题的图像rss_200

有没有办法做到这一点?可以用 Yahoo 的 Pipes YQL 模块来完成吗?是否有其他服务可以执行此功能?

谢谢!

4

1 回答 1

0

YQL 有一个执行方法,可以在输出上运行 JavaScript 以将其转换为所需的格式。这里有一些例子:

<execute><![CDDATA[
// request.url == 'http://some_web_service_or_feed
// This is the same as 'y.rest(request.url).get();'
var returned_response = request.get();
...
]]>
</execute>

<execute><![CDATA[
// Include the OAuth libraries from oauth.net
y.include("http://oauth.googlecode.com/svn/code/javascript/oauth.js");
y.include("http://oauth.googlecode.com/svn/code/javascript/sha1.js");

// Collect all the parameters
var encodedurl = request.url;
var accessor = { consumerSecret: cs, tokenSecret: ""};
var message = { action: encodedurl, method: "GET", parameters: [["oauth_consumer_key",ck],["oauth_version","1.0"]]};
OAuth.setTimestampAndNonce(message);

// Sign the request
OAuth.SignatureMethod.sign(message, accessor);

try {
   // get the content from service along with the OAuth header, and return the result back out
    response.object = request.contentType('application/xml').header("Authorization", OAuth.getAuthorizationHeader("netflix.com", message.parameters)).get().response;
    } catch(err) {
    response.object = {'result':'failure', 'error': err};
    }
]]>
</execute>

参考

于 2013-09-09T22:42:18.533 回答