Есть ли чистый способ определения версии RSS? - PullRequest
1 голос
/ 21 марта 2010

Можно ли определить тип и версию фида таким образом, чтобы вы могли убедиться, что у вас правильная версия. На самом низком уровне, так сказать. Пространства имен - очевидный подход, но он не представлен для большого количества каналов.

Есть мысли?

(я пытаюсь объединить различные RSS-каналы).

Заранее спасибо за любую помощь!

Ответы [ 3 ]

1 голос
/ 21 марта 2010

Учитывая количество вариантов, количество людей, смешивающих пространства имен (обычно для использования полного элемента контента в версии RSS, в которой его нет), и количество недопустимых каналов.

Нет. Было бы лучше просто получить хорошую библиотеку для разбора фидов и позволить ей абстрагироваться от всех проблем с версиями и создать чистый фид Atom из данных, которые вы извлекаете из него.

0 голосов
/ 21 марта 2010

Взгляните на РИМ Project ROME feed parsing library
(источник: rollerweblogger.org )
,

Он может анализировать различные каналы и версии синдикации RSS и ATOM и отправлять любой формат / версию канала синдикации, какую пожелаете.

ROME - это набор Java с открытым исходным кодом инструменты для разбора, генерации и публикация каналов RSS и Atom. Основная библиотека ROME зависит только от Анализатор XML JDOM и поддерживает синтаксический анализ, генерировать и преобразовывать все популярные форматы RSS и Atom, включая RSS 0.90, RSS 0.91 Netscape, RSS 0.91 Userland, RSS 0.92, RSS 0.93, RSS 0,94, RSS 1.0, RSS 2.0, Atom 0.3 и Atom 1.0. Вы можете разобрать в RSS объектная модель, объектная модель Atom или абстрактная модель SyndFeed, которая может Модель любого семейства форматов.

0 голосов
/ 21 марта 2010

Я не знаю чистого пути.Проверьте этот вопрос для ряда подходов.

Zend_Feed_Reader выглядит интересно IMO.Возможно, можно попытаться получить версию фида с этим.

...