我一直在尝试编写自己的RSS阅读器.我可以处理"解析XML"位.我遇到的问题是"如何获取较旧的帖子?"
大多数RSS源仅列出其XML文件中的10-25个最新项.如何获取Feed中的所有项目,而不仅仅是最新的项目?
我能找到的唯一解决方案是使用"非官方"的Google Reader API,就像这样
http://www.google.com/reader/atom/feed/http://fskrealityguide.blogspot.com/feeds/posts/default?n=1000
我不想让我的应用程序依赖于Google Reader.
有没有更好的方法?我注意到在Blogger上,我可以做"?start-index = 1&max-results = 1000",在WordPress上我可以做"?paged = 5".有没有通用的方法来获取RSS提要,以便它给我一切,而不仅仅是最新的项目?
RSS/Atom订阅源不允许检索历史信息.如果他们想要提供它,则可以由Feed的发布者提供,例如您在上面提供的博客或wordpress示例中.
Google阅读器提供更多信息的唯一原因是它在第一次出现时就记住了它.
关于ATOM协议的扩展,有一些关于此类内容的信息,但我不知道它是否实际上是在任何地方实现的.
根据我使用RSS的经验,Feed由最后X个项目编译,其中X是变量.某些Feed可能有完整列表,但为了带宽,大多数地方可能仅限于最后几个项目.
谷歌阅读器拥有旧信息的可能答案是它以后将它存储在用户旁边.
除了David Dean所说的RSS/Atom提要只会包含当时Feed的发布者所拥有的内容,并且有人需要积极收集此信息才能获得任何历史信息.基本上谷歌阅读器是免费的,当你与它进行交互时,你可以从谷歌数据库服务器检索这个存储的信息.
现在他们已经退役了,据我所知,你有两个选择.您必须从您感兴趣的Feed中开始收集此信息,并使用XML或其他类型存储数据,或者您可以从销售此类存档Feed信息的公司之一支付此数据.
我希望这些信息可以帮到某些人.
SEAN
正如此处提到的其他答复一样,提要可能未提供存档数据,但历史项目可能会从其他来源获得。
Archive.org的Wayback Machine具有访问历史内容(包括RSS提要)(如果他们的机器人已经下载了它)的API。我已经创建了Web工具Backfeed,该工具使用此API来重新生成包含串联历史项的feed。如果您想详细讨论实现,请与我们联系。