rome是一个很好用的解析rss的工具包,支持rote格式,最近在项目中使用了此包,共享给大家。在此只公开部分代码public class FeedReader {
public static void main(String[] args) { String source = "http://www.36kr.com/feed"; // source = "http://news.163.com/special/00011K6L/rss_newstop.xml"; // source = "http://hi.baidu.com/ybhanxiao/rss"; // source = "http://ybhanxiao.iteye.com/rss"; // source="http://www.luoyundeng.com/?feed=rss2"; // source = "http://yanglanvip.blog.sohu.com/rss"; // source="http://feed.williamlong.info/"; try { SyndFeed feed = readFeed(source); ReaderSource readerSource = new ReaderSource(); if (feed != null) { getArticles(feed, readerSource, null); } System.out.println(readerSource.getSourceName() + readerSource.getSourceDesc()); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (FeedException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (SecurityException e) { System.out.print("异常" + e); } } /** * 请求rss并返回syndFeed * * @param source * @return * @throws IllegalArgumentException * @throws FeedException * @throws IOException * @author echo * @date 2012-1-11 */ @SuppressWarnings("unchecked") public static SyndFeed readFeed(String source) throws IllegalArgumentException, FeedException, IOException { // SyndFeedInput:从远程读到xml结构的内容转成SyndFeedImpl实例 SyndFeedInput input = new SyndFeedInput(); // Locale.setDefault(Locale.ENGLISH); SyndFeed feed = null; if (source.startsWith("http")) { URLConnection feedUrl = new URL(source).openConnection(); /** *解决此异常: java.io.IOException: Server returned HTTP response code: * 403 for URL 但是自己却可以用浏览器访问,发现可能是服务器对java程序屏蔽了。 * 因为服务器的安全设置不接受Java程序作为客户端访问,解决方案是设置客户端的User Agent */ feedUrl.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)"); feedUrl.setConnectTimeout(5000); feed = input.build(new XmlReader(feedUrl)); } else { File feedUrl = new File(source); feed = input.build(new XmlReader(feedUrl)); } return feed; }}
如果解析某些站点时候日期出现为空时可以再src下加入rome.properties文件,并将datetime.extra.masks的指改为如下:
yyyy-MM-dd HH:mm:ss|yyyy-MM-dd HH:mm|yyyy-MM-dd
相关推荐
"rome-1.0.jar" 和 "rome.jar" 是两个这样的库,它们主要用于处理RSS(Really Simple Syndication)和Atom格式的数据,即新闻聚合和内容发布的标准。这些jar文件包含了处理这些格式的类和方法,使得开发者无需从头...
标题中的“RSS.zip_Rome.jar_java r_java rss_rss feed jar_rss java”表明这是一个与Java RSS处理相关的资源包,其中包含了Rome库的jar文件和其他可能的Java代码示例。Rome是Java社区中一个流行的RSS和Atom聚合库,...
总之,"java_rss.rar"提供的这三个库——EXML.jar、RSSLibJ和Rome,为Java开发人员提供了强大的工具,使他们能够轻松地进行RSS订阅和内容管理。无论你是要创建新的RSS feed,还是从现有源抓取和处理数据,这些库都能...
JDOM和ROME的结合使用,可以实现从XML文档中提取RSS Feed,然后通过ROME解析这些Feed,提取出文章标题、描述、链接等信息,甚至可以进一步处理这些信息,比如存入数据库或进行数据分析。这样的组合,为开发者提供了...
标题 "rome-1.0.jar.zip" 暗示我们正在处理一个压缩文件,其中包含一个名为 "rome-1.0.jar" 的Java归档(JAR)文件。描述同样简单明了,只重复了标题的信息。标签 "rome-1.0.jar" 强调了压缩包的核心内容。压缩包内...
解压后,开发者可以直接将"rome-0.9.jar"添加到Java项目的类路径中,以便在项目中使用Rome的功能。 "rome-license.txt"则包含了Rome库的许可协议,这是开源软件中常见的文件,通常会声明软件的使用、修改和分发的...
Rome是为RSS聚合而开发的一个框架,让你可以快速的开发基于java的RSS阅读
jdom 1.1.2最新版本, rome.jar为RSS聚合而开发的一个框架,让你可以快速的开发基于java的RSS阅读
而"jdom+rome JAR包"是两个Java库,用于帮助开发者更方便地处理XML文档,并创建和管理RSS馈送。 **JDOM库** JDOM,全称Java Document Object Model,是一个为Java平台设计的DOM(Document Object Model)实现。...
`rome.jar`是Java中的一个RSS和Atom聚合库,它提供了处理RSS和Atom feed的API。`jdom.jar`是一个轻量级的XML解析库,用于处理XML文档,它是Rome库的依赖之一。 1. 添加库到项目: 确保你的项目类路径包含了这两个库...
【罗马(Rome)框架详解】 ...通过深入研究其源码,我们可以更好地理解RSS/Atom的工作机制,并利用Rome提供的功能高效地实现各种定制需求。无论你是新手还是经验丰富的开发者,Rome都是处理XML feeds的理想选择。
总的来说,通过使用`rome.jar`和`jdom-1.0.jar`,我们可以方便地在Java中解析和操作RSS feed。在WebLogic和Linux 5 x64环境下,正确配置类路径和JDK版本是成功运行的关键。在实际开发中,还需要注意错误处理和资源...
在Java环境下开发RSS阅读器时,可能会用到一系列的jar包来帮助处理这些任务。以下是一些可能用于RSS阅读器开发的关键知识点: 1. **XML解析库**:由于RSS是基于XML的,因此需要一个XML解析库来解析RSS feed。Java中...
可能包括了使用Rome库和JDOM库的方法,如初始化RSS阅读器、解析馈送、提取条目信息等。例如,`RssUtil`可能有一个静态方法`parseRssFeed(String feedUrl)`,该方法使用Rome的`RssReader`读取给定URL的RSS馈送,并...
总的来说,"jdom+rome-0.9 jar包合集"是一个包含处理XML和构建RSS feeds所需库的打包资源。无论是为了解析XML文档,还是为了创建和维护RSS feeds,JDOM和ROME都是Java开发者不可或缺的工具。通过熟悉并掌握这两个库...
Rome 是一个基于 Java 的开源项目,提供了一组 Atom/RSS 工具类,以使得用 Java 可以更方便和快捷地操作大部分 Syndication 格式数据。Rome 需要 JDK1.4 以上版本和 JDom.jar。 Rome 的主要功能包括解析器和生成器...
标题中的“rome-1.0 jdom 第一个RSS发布实例”揭示了本次讨论的主要内容,涉及到两个关键的Java库——Rome和JDOM,以及如何使用它们来创建和发布RSS(Really Simple Syndication) feed。RSS是一种XML格式,用于发布...
开发者可以将这些JAR文件添加到他们的项目类路径中,以便直接使用JDOM和ROME的功能。 综上所述,这个压缩包提供了一套工具,帮助Java开发者处理XML文档,特别是与RSS feed相关的任务。通过JDOM,开发者可以高效地...
- `rome-1.0.jar`:Rome 是处理RSS和Atom feeds的Java库。 - `p6spy-1.3.jar`:P6Spy 是一个数据库监控工具,可以在不修改应用程序代码的情况下,对SQL进行日志记录和分析。 - `servlet-api.jar`:Servlet API 是...
在实际使用中,开发者可以通过导入这个JAR包到他们的Java项目中,或者利用Maven或Gradle的依赖管理功能,直接引用ROME项目,然后通过编写代码调用其提供的类和方法来处理RSS feed。例如,使用`RomeFeedReader`类读取...