Google Feed api已弃用,如何找到网站的RSS Feed?

时间:2017-01-15 13:08:29

标签: api rss feed google-feed-api

我使用Google Feed API查找特殊关键字或网站的RSS源,现在这个api已弃用,所以我需要另一种方法来查找网站的rss,我谷歌但我找不到任何好方法..

从解析网站的html中查找rss对我不利,因为我想从它的任何子域中找到所有的rs。

例如,在过去使用Google Feed API时,我会给ieee.org并获取所有类似的内容:

http://www.ieee.org/rss/index.html?feedId=News_Release

http://spectrum.ieee.org/rss/fulltext

http://spectrum.ieee.org/rss/blog/automaton/fulltext

和....

那么,是否有任何api或服务可以找到网站的所有RSS源?

2 个答案:

答案 0 :(得分:4)

Feedly的API可以满足您的要求。见https://developer.feedly.com/v3/search/

将网站的域名作为查询参数传递,您将获得rss Feed匹配: https://cloud.feedly.com/v3/search/feeds/?query=ieee.org

答案 1 :(得分:0)

您可以使用rss2json API获取与Google Feed API相同的Feed数据。

var url = "http://www.espncricinfo.com/rss/content/feeds/news/8.xml"; //feed url
var xhr = createCORSRequest("GET","https://api.rss2json.com/v1/api.json?rss_url="+url);
if (!xhr) {
  throw new Error('CORS not supported');
} else {
    xhr.send();
}
xhr.onreadystatechange = function() {
    if (xhr.readyState==4 && xhr.status==200) {
        var responseText = xhr.responseText;
        var result = JSON.parse(responseText);
        console.log(result);
    }
}
function createCORSRequest(method, url) {
    var xhr = new XMLHttpRequest();
    if ("withCredentials" in xhr) {
        xhr.open(method, url, true);
    } else if (typeof XDomainRequest != "undefined") {
        xhr = new XDomainRequest();
        xhr.open(method, url);
    } else {
        xhr = null;
    }
    return xhr;
}