Как программно найти URL канала блога с сайта блога - PullRequest
3 голосов
/ 27 февраля 2012

Мы используем следующий код для чтения RSS |ATOM feed, есть ли способ найти RSS |URL-адрес ATOM канала блога задает сайт блога (например, 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));

1 Ответ

1 голос
/ 17 октября 2012

Кажется, в ROME такой функции нет, но есть способ.Найдите конкретный элемент в источнике HTML: значения

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

rel и type должны быть точно такими же, а href будет содержать URL-адрес канала.

Также естьспособ использования AJAX Feed API , отправив запрос следующим образом:

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

Источник .

...