- 浏览: 7339676 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
针对目前市场流行的RSS格式很多。RSS 1.0和 2.0 格式所包含的核心信息相同,但其结构不一样。 RSS 1.0 的根元素是 rdf:RDF,而 RSS 2.0 的根元素是 rss。rss 还包含一个强制版本属性用以表示所用的RSS的准确格式(可能的值包括:0.91, 0.94 等)。另一个主要差别是 RSS 1.0 文档有名字空间限定,RSS 2.0 的文档就没有。不管怎样,包含在两个文档中的信息本质上是一样的。
两个版本都包含 channel 元素,而 channel 元素又包含三个必须的元素:title、description 和 link,其代码如下:
<channel>
<title><!-- channel 的标题 --></title>
<description><!-- 简要描述 --></description>
<link><!-- channel 的 URL --></link>
<!-- 可选/可扩展元素 -->
</channel>
除了这些必须的元素外,RSS 1.0 还定义了三个附加元素:image、items 和 textinput,其中,image 和 textinput 是可选的。另一方面,RSS 2.0 提供了 16 个附加元素,其中也包括 image、items 和 textinput,此外还有 language、copyright、managingEditor、pubDate 和 category。RSS 1.0 允许通过定义在单独的 XML 名字空间中的可扩展元素来创建这种类型的元数据。
这两种格式在结构上的主要区别必须要看其 item、image 和 textinput 节点的表示形式。RSS 1.0 中,channel 元素包含对 item、image 和 textinput 节点的引用,这些节点存在于 channel 节点本身之外。这样在 channel 和 所引用的节点之间建立了一种 RDF 关联。如 Figure 1 所示,channel 元素与一个 image 元素以及两个 item 元素关联。RSS 2.0 中,item 元素只是在 channel 元素中连续排放(如 Figure 2 所示)。item 元素包含实际的新闻项信息。item 的结构在两个版本中是相同的。item 元素通常包含 title、link 和 description 元素,如下代码所示:
<item>
<title><!-- 项标题 --></title>
<link><!-- 项 URL --></link>
<description><!-- 简要描述 --></description>
<!-- 可选的/可扩展的元素 -->
</item>
在 RSS 1.0 中,title 和 link 是必须的,description 是可选的。而在 RSS 2.0 中,title 或 description 必须提供其中的一个;其它均可选。这些只是定义在 RSS 1.0 中的 item 元素。RSS 2.0 提供几个其它可选元素,其中有 author、category、comments、enclosure、guid、pubDate 和 source。RSS 1.0 获取这样的元数据是通过定义在单独的 XML 名字空间中称为 RSS 模块的可扩展元素来实现的。例如,在 Figure 1 中,item 的日期是用 Dublic Core 模块的 <dc:date> 元素表示的。
有关不同格式的完整信息请参考 RSS 1.0 和 2.0 规范。
Atom 乃一项目的名字,主要是开发一个新的网志摘要格式以解决目前 RSS 存在的问题(混乱的版本号,不是一个真正的开放标准,表示方法的不一致,定义贫乏等等)。Atom 希望提供一个清晰的版本以解决每个人的需要,其设计完全不依赖于供货商,任何人都可以对之进行自由扩展,完整详细说明。
当今许多 Blog 引擎已经支持当前的摘要格式。Figure 3 是一个Atom 0.3 提要例子,它与前述 Figure 1 及 Figure 2 RSS 提要等同。注意 Atom 提要用名字空间限定的,但它不使用 RDF。这使得 Atom 和 RSS 1.0 及 RSS 2.0 在某些地方有相似之处。Atom 在未来是否能被接受,人们拭目以待。
除了定义新的摘要格式之外,Atom 还希望定义一个标准的档案文件格式和一个标准的网志编辑 API(Atom API)。有关 Atom 详细规范以及其它 Atom 资源请访问 The Atom Project。
准备采用RSS做一个阅读器软件呢,但是发现RSS的解析组件很多,但是多数局限性很大。如RssLibJ不能解析RSS2.0版本。紧接着测试其他的RSS工具也具有这样那样的问题。最终决定采用Apache的FeeParser解析RSS。根据Feeparser的官方网站(http://commons.apache.org/dormant/feedparser/)提供信息如下:
原文章:
Jakarta FeedParser is a Java RSS/Atom parser designed to elegantly support all versions of RSS (0.9, 0.91, 0.92, 1.0, and 2.0), Atom 0.5 (and future versions) as well as easy ad hoc extension and RSS 1.0 modules capability.
FeedParser was the parser API designed by Kevin Burton for NewsMonster and has been donated to the ASF in order to continue development.
FeedParser differs from most other RSS/Atom parsers in that it is not DOM based but event based (similar to SAX). Instead of the low level startElement() API present in SAX, we provide higher level events based on feed parsing information.
Events are also given to the caller independent of the underlying format. This is accomplished with a Feed Event Model that isolates your application from the underlying feed format. This enables transparent support for all RSS versions including Atom. We also hide format specific implementation such as dates (RFC 822 in RSS 2.0 and 0.9x and ISO 8601 in RSS 1.0 and Atom) and other metadata.
The FeedParser distribution also includes:
- An implementation of RSS and Atom autodiscovery.
- Support for all content modules including xhtml:body, mod_content (RDF and inline), atom:content, and atom:summary
- Atom 1.0 link API as well as RSS 1.0 mod_link API
- An HTML link parser for finding all links in an HTML source file and expanding them to become full URLs instead of relative.
Supported Feed Formats
Jakarta FeedParser supports the following syndication formats:
In addition the following module supports is available:
想知道其他做同类功能的兄弟,针对RSS的标准的差异,采用什么RSS解析组件解析RSS。希望大家拍砖!
发表评论
-
TestNG简单的学习(十三)TestNG中Junit的实现
2013-12-04 09:00 3356TestNG和junit的整合 ... -
TestNG简单的学习(十二)TestNG运行
2013-12-03 09:08 51589文档来自官方地址: ... -
TestNG简单的学习(十一)TestNG学习总结
2013-12-03 09:08 14199最近一直在学习关于TestNG方面的知识,根 ... -
TestNG简单的学习(十)TestNG @Listeners 的使用
2013-12-03 09:07 8695TestNG官方网站: http://testng.or ... -
TestNG简单的学习(九)TestNG Method Interceptors 的使用
2013-12-03 09:07 2715TestNG官方网站: http://testng ... -
TestNG简单的学习(八)TestNG Annotation Transformers 的使用
2013-12-03 09:07 2813TestNG官方网站: http://testng.or ... -
TestNG简单的学习(七)TestNG编程方式运行
2013-12-02 09:22 2456TestNG官方网站: http://testng.or ... -
TestNG简单的学习(六)测试工厂注释的使用
2013-12-02 09:22 2785TestNG官方网站: http://testng.or ... -
TestNG简单的学习(五)参数化测试数据的定制
2013-12-02 09:22 2703TestNG官方网站: http://testng.or ... -
TestNG简单的学习(四)测试方法通过名称名称依赖实现
2013-12-02 09:21 2083TestNG官方网站: http://testng.or ... -
TestNG简单的学习(三)测试方法通过测试分组依赖实现
2013-12-02 09:21 2830TestNG官方网站: http://testng.or ... -
TestNG简单的学习(二)参数化测试并发且多方法测试方法判定
2013-11-29 15:35 3702TestNG官方网站: http://testng.or ... -
TestNG简单的学习(一)类和方法级别@Test的区别
2013-11-29 15:31 9426TestNG官方文档的地址: http://testng ... -
Feed4Junit的简单使用(七)Feed4TestNg
2013-11-29 13:35 6133在Feed4Junit主要针对junit实现的 ... -
Feed4Junit的简单使用(六)数据来特定格式文件
2013-11-29 12:29 2767Feed4Junit官方地址: http://da ... -
Feed4Junit的简单使用(五)数据来自动态约束数据
2013-11-29 12:29 2631Feed4Junit官方地址: http://datab ... -
Feed4Junit的简单使用(四)数据来自定义数据源
2013-11-28 14:09 3103Feed4Junit官方地址: http://databe ... -
Feed4Junit的简单使用(三)数据源来自数据库
2013-11-28 13:58 3170Feed4Junit官方地址: http://databe ... -
Feed4Junit的简单使用(二)数据源来自文件
2013-11-28 13:50 4572Feed4Junit官方地址: http://datab ... -
Feed4Junit的简单使用(一)
2013-11-28 13:47 2215Feed4Junit官方地址: http://databe ...
相关推荐
VC写的RSS解析引擎,完全免费;支持RSS0.9X、RSS1.0、RSS2.0及ATOM规范;支持频道下载;支持所有中文网页;同步/异步解析;智能转换;定时自动刷新;多任务;不需要.net或java环境的支持等等。采用COM组件,适用于...
总的来说,这些组件共同构成了一个强大的RSS解析和处理框架,使得在Java应用程序中集成和使用RSS馈送变得简单易行。通过理解和利用这些工具,开发者能够高效地获取并展示来自不同源的实时信息。
### Java 解析 RSS 具体信息 ...通过上述示例代码的解析,我们可以看到使用 Java 和 Dom4j 库来解析 RSS 文件是一种高效且简洁的方法。这种方法不仅可以快速提取 RSS 文件中的信息,还具有很好的可扩展性和灵活性。
RSS 格式书写规范和 Java 中解析 DOM 的四种方式 RSS(Really Simple Syndication,简易信息聚合)是一种 XML 方言,用于连锁 Web 内容和元数据。RSS 2.0 是当前最常用的版本,且与 0.91 向后兼容。RSS 文件由一个 ...
RSS 2.0是最常见的RSS版本,它定义了一套标准元素和结构,如频道(channel)、条目(item)、标题(title)、描述(description)等,用于表示新闻或文章的元数据。 关于RSS解析器的实现,通常会涉及以下知识点: ...
在IT行业中,XML(eXtensible Markup Language)和RSS(Really Simple Syndication)是两种广泛应用于数据交换和内容发布的格式。本示例主要探讨如何在iPhone应用中解析XML结构的RSS feed,以便将新闻标题展示在表格...
RSS(Really Simple Syndication)是一种基于XML的网络内容发布协议,它使得用户能够轻松地获取网站的更新信息,如新闻、博客文章等。RSS通过订阅(subscribe)和发布(publish)的方式,允许用户无需直接访问网站就...
在描述中提到的RSS阅读器开发,首先需要理解RSS(Really Simple Syndication)是一种XML格式,用于发布和订阅新闻、博客和其他在线内容。RSS文件通常包含标题、摘要、链接等元素,使得用户无需访问原始网站就能获取...
在本文中,我们将深入探讨如何使用JavaScript解析RSS(Really Simple Syndication) feed,这是一种常见的数据格式,用于发布新闻提要、博客更新和其他定期发布的内容。RSS订阅允许用户获取网站的最新内容而无需直接...
rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET rss阅读器与 XML解析 XML RSS 阅读器 Winfom ASP.NET ...
Rome是为RSS聚合而开发的一个框架,让你可以快速的开发基于java的RSS阅读,发布器,支持 RSS 0.91 Netscape RSS 0.91 Userland RSS 0.92 RSS 0.93 RSS 0.94 RSS 1.0 RSS 2.0 Atom 0.3 Atom 1.0
这个库包括了RSS和Atom规范的模型类,以及解析和生成XML文档的工具。要使用Rome,你需要将其添加到你的项目依赖中。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...
而SAX(Simple API for XML)是一种事件驱动的XML解析器,它不像DOM(Document Object Model)那样将整个XML文档加载到内存中,而是逐行解析,因此对于大型XML文件,SAX解析更高效。 标题"读取RSS-SAX解析XML实例...
标题中的“提交RSS工具英文站RSS提交,英文站RSS提交”和描述中的“提交RSS工具搜索引擎的RSS方式的提交提交RSS工具”都指向了一个主题,即利用RSS(Really Simple Syndication)工具向英文网站和搜索引擎提交RSS ...
本文介绍了一种利用Oracle Java Bean组件动态生成RSS文件的方法,该方法能够有效提高开发效率,减少重复劳动。通过结合Oracle JSP DBUtil中的JavaBean组件,可以从数据库中提取信息并动态生成RSS文件,从而实现实时...
RSS是一种基于XML的简易内容聚合(Syndication)协议,它允许网站提供一种标准化的方式来分享和分发内容。RSS文件通常称为RSS Feed或RSS Channel,其中包含标题、描述、链接等信息,订阅者可以通过RSS阅读器获取...
总之,Swift-IDNFeedParser是Objective-C开发者的一个强大工具,帮助他们快速集成RSS功能,专注于应用的核心业务逻辑,而不是底层的数据解析。无论你是初学者还是经验丰富的开发者,这个库都能为你节省大量时间和...
解析代码示例: import net.xfok.rss.parser.Feed; import net.xfok.rss.parser.Rss; ...... String url="http://www.xfok.net/news/rss.xml"; Rss rss=new rss(url); List<Feed> feeds=rss.getFeeds(); ...... 欢迎...
综上所述,这个组件为VB开发者提供了一套全面的工具,用于高效地抓取、解析和管理RSS和OPML数据,且允许进行自定义扩展。开发者可以通过研究源代码了解其实现细节,以满足其项目中对RSS和OPML处理的特殊需求。
在Android开发中,RSS(Really Simple Syndication)是一种常见的数据格式,用于订阅和获取网站的最新内容,如新闻、博客文章等。本话题主要探讨如何解析RSS feed,并且结合图片展示,这在创建新闻应用或者聚合信息...