javascriptでRSS取得(google.feeds.Feed → YQL APIへ移行)
RSSを取得解析するGoogleのAPIが廃止になった(そんなことあるの…)ので、他サイトを見ながらプログラムの書き換え。
「YQL APIを使う方法」と「XMLHttpRequestを使う方法」が紹介されてますが、
普通に後者を使った場合、、、
XMLHttpRequest cannot load http://.... . No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
というクロスドメイン問題が発生するので、
jquery.xdomainajax.js
を使って回避すると良いらしいですが、この方法も中でYQL APIを使ってます。
結論は、前者の方がすんなり行きました。そのソースです。
※YQL APIは<YQL APIコンソール>を使ってテストできます。
フィードURLからjson形式で取得して処理を施す感じです。
<script type="text/javascript">
$(function(){<br />
//()の中が取得する件数
$.getJSON("https://query.yahooapis.com/v1/public/yql?callback=?", {
q: "select * from rss(5) where url = 'フィードURL'",
format: "json"
},function(data) {
//<item>タグに含まれるデータ
var item=data.query.results.item;
if(Array.isArray(item)){
console.log("item.length:"+item.length);
for(var i=0;i<item.length;i++){
//”<item><title>タコ焼き</title></item>”ならitem[i].title==タコ焼きとか
//処理
}
}
else{
//処理
}
});
});
</script>