【问题标题】:Twitter feed appears to be both RSS 2.0 and Atom?Twitter 提要似乎既是 RSS 2.0 又是 Atom?
【发布时间】:2010-04-18 22:40:58
【问题描述】:

我正在解析各种站点提要,并整理了一个小型库来帮助我完成这项工作。

查看Atom RFCRSS 2.0 specification,来自Twitter 的提要似乎是一个组合。 Twitter 在 RSS 2.0 结构中指定了 Atom 命名空间?

GitHub 使用 Atom,而 Flickr(提供多个但默认来自用户配置文件的“最新”提要)显示为 to be RSS 2.0

Twitter 如何指定一个 Atom 命名空间然后使用 RSS?

这使得解析提要有点模棱两可,除非我忽略任何指定的命名空间而只检查文档结构。

【问题讨论】:

    标签: xml rss feedparser atom-feed syndication


    【解决方案1】:

    Twitter 根本没有为 RSS 指定名称空间,但它实际上是 RSS。它为 Atom 指定命名空间只是因为它在内部使用了一些 atom 元素(特别是它使用 atom:link 来引用提要的 URL。

    请注意,xmlns for atom 指定了一个前缀,这意味着文档中只有那些具有 atom: 前缀的元素来自该命名空间。

    实际消除歧义的最简单方法是只查看根元素。如果是 Atom,它将是 feed。如果是 RSS,则为 rss

    【讨论】:

    • 感谢您的解释。虽然我从未说过 Twitter 指定了一个 RSS 命名空间,只是一个具有 RSS 结构的 Atom。
    【解决方案2】:

    这绝对是 RSS。一方面,Atom 提要不使用频道或项目。鉴于此,关于规范,您可以排除 Atom。而且我有一种预感,声明命名空间并不违反 RSS 规范。

    无论如何,您不必担心自己解析提要;获取parser 为您完成工作。

    【讨论】:

    • 感谢解析器链接,我正在 PHP 中为 Wordpress 网站实现此功能。
    猜你喜欢
    • 2011-01-27
    • 1970-01-01
    • 2010-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 2010-10-30
    • 1970-01-01
    相关资源
    最近更新 更多