【javascript】RSSを読み込んで表示させる【Google Feed API】

公開日: : 最終更新日:2014/08/14 JavaScript/jQuery, ニコニコ動画

スポンサーリンク

jQueryで簡単にRSSフィードを表示させる方法としてGoogleFeedAPIを利用するというのがあります。

これを使うことでRSSを動的に読み込んで表示させることが可能です。

<html>
  <head>
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script type="text/javascript">

    google.load("feeds", "1");

    function initialize() {
      var feed = new google.feeds.Feed("http://fastpshb.appspot.com/feed/1/fastpshb");
      feed.load(function(result) {
        if (!result.error) {
          var container = document.getElementById("feed");
          for (var i = 0; i < result.feed.entries.length; i++) {
            var entry = result.feed.entries[i];
            var div = document.createElement("div");
            div.appendChild(document.createTextNode(entry.title));
            container.appendChild(div);
          }
        }
      });
    }
    google.setOnLoadCallback(initialize);

    </script>
  </head>
  <body>
    <div id="feed"></div>
  </body>
</html>

このサンプルは本家ページのものです。

<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
  google.load("feeds", "1");
</script>

冒頭に上記の記述で読み込みを行ってからgoogle.setOnLoadCallbackによってRSSの読み込みを開始します。

使用例

雑ですがこんな風に使ってみました。readFeedというのがRSSを読み込んで表示させる関数で、引数はRSSのURL、結果を出力するセレクタの文字列(jQueryを使ってます)、最大記事数としました。最大記事数はFeedクラスのsetNumEntriesメソッドで指定が可能です。setNumEntriesの詳細はページを見てください。

<script type="text/javascript">
var readFeed = function(feedurl,selector,maxlength){
    function initialize(){
        var feed = new google.feeds.Feed(feedurl);
        feed.setNumEntries(maxlength);
        feed.load(function(result) {
            if (!result.error) {
                var dst = "";
                for (var i = 0; i < result.feed.entries.length; i++) {
                    var entry = result.feed.entries[i];
                    var title = entry.title;
                    var link = entry.link;
                    var content = entry.content;
                    dst += content;
//                    var content = entry.content;
//                    var snippet = entry.contentSnippet;
//                    var publishedDate = entry.publishedDate;
//                    var category = entry.categories[0];
                    
                }
                $(selector).html(dst);
            }
        });
    }
    google.setOnLoadCallback(initialize);
}
readFeed("http://www.nicovideo.jp/ranking/fav/daily/all?rss=2.0&lang=ja-jp","#feedtest",5);
</script>

<div id="feedtest"></div>

この例ではニコニコ動画のデイリーランキングRSSを読み込んで概要(contents)を指定のセレクタに追加していっているだけです。Feedからはリンクなど色々取れるので欲しい情報だけ抽出して出力する形にしてください。

スポンサーリンク
  • このエントリーをはてなブックマークに追加

関連記事

WordPressサイトのSSL対応(HTTPS化)手順のまとめ【さくらサーバー】

先週頃にこのサイトをSSL対応しましたのでその流れについてまとめておき

【Google Charts】動的にグラフを更新する方法

はじめに Webサイト上でグラフを描こうと思った場合、いくつかのJa

体重変化量計算シミュレータ【ダイエット/肥満】

ツール本体 入力 カロリー入力 1日の余剰摂取/消費カロリー

おサイフケータイ対応ストレージ32GBのSIMフリースマホまとめ【2017年秋版】

はじめに SIMフリーの格安スマホのおサイフケータイ機能付きのもので

リクルート期間限定ポイントの有効な使い道

はじめに  先日クレジットカードの見直し活動の一環でポイント還元率の

初心者がお金を貯めるための節約・財テク手法まとめ【ポイント還元・投資・税金対策】

はじめに  最近なるべく節約しようと思い、お金周りに関して色々調べて

動画講座を効率的にキャプチャして復習する方法

はじめに  最近、動画媒体の講座などをたまに視聴しています。独学だと

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑