2014-01-16 4 views
0

i'm с помощью feedzirra для извлечения и разобрать документ со следующей структурой:прочитанной пользовательские элементы из RSS, используя Feedzirra

<item> 
    <title>Title</title> 
    <description>Ddescription</description> 
    <date>2014-02-01 20:00:00</date> 
    <durationMinutes>40</durationMinutes> 
    <sessionGuid>f09c385khll5-5edc-4c8a-8370-1027ac7cb2ce</sessionGuid> 
    <eventGuid>1d53fac2-a553-46b2-a72323s</eventGuid> 
    <sessionID>782235</sessionID> 
</item> 

Когда цикл по записям, entry.title и entry.description дать мне доступ к эти элементы, но я не могу получить все остальное.

Это код для извлечения и синтаксического анализа:

feed = Feedzirra::Feed.fetch_and_parse("http://localhost/sessionallrss-21Dec.xml") 
    feed.entries.each do |entry| 
     unless exists? Event.find_by_guid(:guid) 
     event = Event.new 
     event.title = entry.title 
     event.description = entry.description 
     event.sessionGuid = entry.sessionGuid 
     event.durationMinutes = entry.durationMinutes 
     event.save 
     end 
    end 

Как я получить значение для пользовательских элементов с именем, как «durationMinutes» или «sessionGuid»?

+0

Возникли ли какие-либо ошибки? Глядя на документы FeedZirra, кажется, что вы можете получить доступ к любому тегу в фиде? Можете ли вы дать нам код, как вы разбираете фид? –

+0

Просто обновленный вопрос выше и добавьте его, Rich. – ntonnelier

+0

и нет, никаких ошибок. – ntonnelier

ответ

0

Вы пытались проверить объект записи, чтобы узнать, есть ли у него атрибуты под разными названиями? (Путы entry.inspect)

Если элементы/атрибуты отсутствуют проверки, вы можете добавить их в синтаксический анализатор так:

Feedjira::Feed.add_common_feed_entry_element('durationMinutes') 
Feedjira::Feed.add_common_feed_entry_element('sessionGui') 

Ссылки: