Разбор пользовательских элементов подачи с помощью FeedZirra - PullRequest
4 голосов
/ 23 июля 2010

Есть ли способ анализа пользовательских элементов фида? Не кормить записи », пользовательские элементы канала. Я знаю, что есть способ сделать то же самое для записей. Мол,

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!

Я хочу, чтобы можно было добиться того же для объекта подачи. Что-то вроде

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

Есть ли способ? Или это требует написания патча для FeedZirra?

Ответы [ 2 ]

4 голосов
/ 28 февраля 2011

Уже немного поздно, но больше людей могут искать ответ. Поместить следующую строку в файл в вашей конфигурации / инициализаторы, кажется, работает:

Feedzirra::Parser::RSS.element :latitudes
0 голосов
/ 17 июля 2014

По новым 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
...