3

我们使用下面的代码来阅读一个RSS | ATOM feed,有没有办法找到RSS | 博客提要的 ATOM URL 给出博客站点(例如for http://my.typepad.com or http://occupylosangeles.org/)。这应该类似于 google.com/reader 所做的。

import com.sun.syndication.feed.atom.Feed;
import com.sun.syndication.feed.module.Module;
import com.sun.syndication.feed.synd.SyndCategory;
import com.sun.syndication.feed.synd.SyndContent;
import com.sun.syndication.feed.synd.SyndEntry;
import com.sun.syndication.feed.synd.SyndFeed;
import com.sun.syndication.feed.synd.SyndFeedImpl;
import com.sun.syndication.fetcher.FeedFetcher;
import com.sun.syndication.fetcher.FetcherEvent;
import com.sun.syndication.fetcher.FetcherListener;
import com.sun.syndication.fetcher.impl.FeedFetcherCache;
import com.sun.syndication.fetcher.impl.HashMapFeedInfoCache;
import com.sun.syndication.fetcher.impl.HttpURLFeedFetcher;
import com.sun.syndication.io.SyndFeedInput;
import com.sun.syndication.io.XmlReader;
    FeedFetcher fetcher = new HttpURLFeedFetcher(feedInfoCache);
    // register listener to feed
    FetcherEventListenerImpl listener = new FetcherEventListenerImpl();
    fetcher.addFetcherEventListener(listener);

    // Mechanism to read feeds via Rome Fetcher
    SyndFeed feed = fetcher.retrieveFeed(new URL(feedURL));
4

1 回答 1

1

ROME 中似乎没有这样的功能,但有办法。在 HTML 源代码中查找特定元素:

<link rel="alternate" type="application/rss+xml" href="http://url-of-an-rss-feed">

reltype值应该完全一样,并且href将包含提要的 URL。

还有一种方法可以通过发送这样的请求来使用AJAX Feed API :

http://ajax.googleapis.com/ajax/services/feed/lookup?v=1.0&q=YOUR-PAGE-URL

来源。_

于 2012-10-17T12:08:28.827 回答