2015-07-12 93 views
1

我試圖解析包含iTunes特定標記的podcast rss feed。羅馬有一個模塊可以做到這一點,它可以很好地獲取'Channel'級別標籤的信息。使用ROME解析iTunes RSS用於JAVA

即。它給你的元信息很好。這是做它的代碼:

SyndFeedInput input = new SyndFeedInput(); 
SyndFeed syndfeed = input.build(new XmlReader(feed.toURL())); 

Module module = syndfeed.getModule("http://www.itunes.com/dtds/podcast 1.0.dtd"); 
FeedInformation feedInfo = (FeedInformation) module; 

我們分析了播客的每一個人情節信息,還有一個EntryInformation接口。

但是,在FeedInformation從鑄造模塊對象創建的,我應該使用什麼來填充EntryInformation

回答

0

EntryInformationSyndEntry的一部分:

for (SyndEntry entry : syndfeed.getEntries()) { 
    Module entryModule = entry.getModule("http://www.itunes.com/dtds/podcast-1.0.dtd"); 
    EntryInformation entryInfo = (EntryInformation)entryModule; 
    .. 
} 
+0

這給出了一個錯誤,因爲它不允許從Object類型轉換爲SyndEntry在for循環 –

+0

我把它做舊工作用於循環,並將每個條目從.getEntries()方法轉換爲(SyndEntry)對象。現在工作...謝謝。 –

+0

好。如果getEntries方法返回Objects,那麼您可能使用的是舊版本的羅馬庫(沒有泛型)。最新版本是1.5.0:http://mvnrepository.com/artifact/com.rometools/rome/1.5.0 – janih