如何使用Rome rss读取商品标签?

时间:2019-01-31 15:16:04

标签: java rss rss-reader rome

考虑来自rss网址的响应示例:

y

我想从<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"> <channel> <title>MyTitle</title> <atom:link href="/mylink/" rel="self" type="application/rss+xml" /> <link>somelink</link> <description></description> <lastBuildDate>Wed, 30 Jan 2019 14:00:03 +0000</lastBuildDate> <language>en-US</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>https://wordpress.org/?v=5.0.3</generator> <item> <title>item title</title> <link>/oitem-link</link> <pubDate>Wed, 30 Jan 2019 14:00:03 +0000</pubDate> <dc:creator><![CDATA[John]]></dc:creator> <category><![CDATA[Category1]]></category> <category><![CDATA[Amazon]]></category> <category><![CDATA[cleaning]]></category> <category><![CDATA[online shopping]]></category> <category><![CDATA[selling]]></category> <guid isPermaLink="false">/premalink</guid> <description><![CDATA[content]]></content:encoded> </item> </channel> </rss> 标签中阅读一些文章。 rss rome库如何处理?他们自以为是

<item>

但是import com.rometools.rome.feed.synd.SyndFeed; import com.rometools.rome.io.FeedException; import com.rometools.rome.io.SyndFeedInput; import com.rometools.rome.io.XmlReader; // fetch data from URL SyndFeedInput input = new SyndFeedInput(); SyndFeed feed = null; BufferedReader reader; // erader readed from http response body feed = input.build(reader); 对象没有用于获取feed集合的任何API。 (或者此收藏集放置得很深...)

有什么可解决的地方吗?

PS。是的,我可以通过任何items(Jaxb?)解析器或带有regexp或xpath的事件进行解析。但是问题是关于rome库解决方案。

1 个答案:

答案 0 :(得分:0)

com.rometools.rome.feed.synd.SyndFeed的罗马v1.9.0 API文档中,有一种获取条目/项目的方法:List<SyndEntry> getEntries();