2012-03-21 1 views
0

Я попытался разобрать корм для журнала природы, используя php и несколько разных читателей rss/atom, но я не могу найти правильный способ их прочтения.Какой тип корма использует журнал Nature?

Их структура подачи для меня - это не RSS, а с помощью атомных читателей я тоже не мог получить правильного ответа.

пример: http://feeds.nature.com/nphys/rss/current

Любой знает, что их тип корма и как разобрать их?

ответ

1

В соответствии с самим сырым кормом (http://feeds.nature.com/nphys/rss/current?format=xml) это формат RSS1 с кучей других тегов, вставленных через префикс xmlns: который обозначает конкретное пространство имен для этих тегов (например, rdf, prism, feedburner и т. Д.). Поэтому, если вы игнорируете все объявленные пространства имен (например, все с тегом, начинающимся с <something:something> или любым атрибутом с двоеточием в его имени, и просто анализируйте теги, как и в спецификации RSS1 xml, вы должны быть в порядке ...

1

он использует то, что он говорит в root element:.

<rdf:RDF 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:prism="http://prismstandard.org/namespaces/basic/2.0/" 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
    xmlns:content="http://purl.org/rss/1.0/modules/content/" 
    xmlns="http://purl.org/rss/1.0/" 
    xmlns:admin="http://webns.net/mvcb/" 
    xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"> 

См https://en.wikipedia.org/wiki/RDF_feed

различные дополнительные XML namespaces расширить базовый RDF документ с элементами из других приложений XML Эти элементы без имен являются RSS 1.0 элементы, например

<title>Nature Physics - Issue - nature.com science feeds</title> 

Это также указано xmlns="http://purl.org/rss/1.0/".

Следуйте заданным URL-адресам, чтобы узнать больше о приложениях XML, используемых в этом документе.

Вы можете легко проанализировать этот документ с помощью DOM или SimpleXML или XMLReader.