如何从RSS获得最后一个标题?

时间:2011-03-20 13:38:12

标签: rss lua

我正在使用lua-feeds(http://code.matthewwild.co.uk/lua-feeds/

require "lua-feeds/feeds"

local feed = feeds.open("http://php.net/feed.atom");
for _, entry in ipairs(feed) do
bot.rooms["php@conference.aqq.eu"]:send_message(entry:get_child("title"):get_text().."\n"..entry:get_child("link").attr.href);
end

这是我的代码,即获得完整的RSS。我只想获得最后的标题和链接,我该怎么做?

2 个答案:

答案 0 :(得分:5)

我不明白@ DeadMG的答案是如何被接受的。这看起来非常错误。

ipairs接受一个序列并在其上返回一个迭代器,因此ipairs(feed)是源上的迭代器。在OP提供的示例中,ipairs 调用一次。 生成的迭代器被多次调用。

@ DeadMG的想法可能只是调用迭代器一次。这就是它的样子:

local f, v, i = ipairs(feed)
local _, entry = f(v, i)

,如果你喜欢技巧:

local _, _, entry = pcall(ipairs(feed))

但是......你为什么要这样做?您将Feed作为表格。您想要该表的第一个条目:

local entry = feed[1]

完成。

答案 1 :(得分:0)

您只需拨打 ipairs(feed)的结果