2010-07-23 5 views
4

Existe-t-il un moyen d'analyser les éléments personnalisés du fil? Ne pas nourrir les entrées, les éléments personnalisés du flux. Je sais qu'il existe un moyen de faire la même chose pour les entrées. Comme,Analyse des éléments de fil personnalisés à l'aide de FeedZirra

Feedzirra::Feed.add_common_feed_entry_element("wfw:commentRss", :as => :comment_rss) 
feed = Feedzirra::Feed.parse(some_atom_xml) 
feed.entries.first.comment_rss # => wfw:commentRss is now parsed! 

Je veux être en mesure de réaliser la même chose pour l'objet de flux. Quelque chose comme,

Feedzirra::Feed.add_common_feed_element("geo:lat", :as => :latitudes) 
feed = Feedzirra::Feed.fetch_and_parse(“somerss”) 
feed.latitudes # => 44.022448 

Y at-il un moyen? Ou cela nécessite-t-il d'écrire un patch pour FeedZirra?

Répondre

4

Il est un peu tard, mais plus de gens pourraient être à la recherche d'une réponse. Mettre la ligne suivante dans un fichier dans votre config/initializers semble fonctionner:

Feedzirra::Parser::RSS.element :latitudes 
+0

Merci pour cela - a parfaitement fonctionné pour moi. –

0

Selon la nouvelle http://feedjira.com/extending.html

# Add the generator attribute to all feed types 
Feedjira::Feed.add_common_feed_element('generator') 
Feedjira::Feed.fetch_and_parse("http://www.pauldix.net/atom.xml").generator # => 'TypePad' 

# Add some GeoRss information 
Feedjira::Feed.add_common_feed_entry_element('geo:lat', :as => :lat) 
Feedjira::Feed.fetch_and_parse("http://www.earthpublisher.com/georss.php").entries.each do |e| 
    p "lat: #[e.lat}, long: #{e.long]" 
end 
Questions connexes