Creazy!

WEBエンジニア・ヤガーのテック・ガジェットブログ

Pipes 開発実績

rss2json:RSS(XML)からJSONに変換する方法まとめ(てかYahoo!Pipesでいいじゃん?)

投稿日:


いまさらかもしれないけどね。
■Perlな方法
 ・[JSON] コイツ、速いぞ! きっとFirefoxのXMLパーサが遅いんだ。 Kawa.netブログ(川崎有亮)/ウェブリブログ
 ・[JSON] xml2json.pl – XMLファイルをJSONに変換するスクリプト Kawa.netブログ(川崎有亮)/ウェブリブログ
 ・たけまる / フィードから JSON への変換方法を統一して JavaScript でラクする
■PHPな方法
 ・PHP4でXMLをJSONに変換するメモ – F.Ko-Jiの「一秒後は未来」
■公開されてるWebサービス(API)を使う
 ・XML を JSON に変換するサービス – ベータ版を公開 :: Drk7jp
 ・Feed2JSON : blog.nomadscafe.jp
国外とかあげだすとキリないのでやめますが(調べてないけど)、
APIが楽チンでいいなーと思ってしまうんだけど、個人のサーバーで運営してるところの場合、負荷とか大丈夫?ってちょっと心配な面もありますよね。
んで、とっても良い方法があった。Pipesでできるじゃないかと。

RSSからJSONに変換するYahoo!Pipes

もう同じようなPipesは存在しているかもしれないけど、作ってみた。
http://pipes.yahoo.com/yager/rss2json
普通に使ったら、入力したRSSを返すだけのRSSプロキシみたいな感じになるんだけど、PipesはJSONのアウトプットもできるから、以下のURLで呼び出してやれば良い。

http://pipes.yahoo.com/yager/rss2json?_render=json&_callback=コールバック関数&url=RSSのURL

rss2json(Yahoo!Pipes)の使い方サンプル

pipes rss2json test

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>pipes rss2json test</title>
</head>
<body>
<div id="rss_viewer"></div>
<script type="text/javascript">
/**
* show RSS from JSON (converted by Pipes)
*/
function showRSSfromJSON(json) {
var html = '<dl>';
for( var i=0; i<json.value.items.length; i++ ) {
html += '<dt><a href="' + json.value.items[i].link + '">' + json.value.items[i].title + '</a></dt>';
html += '<dd>' + json.value.items[i].description + '</dt>';
html += '<dd><a href="' + json.value.items[i].author.uri + '">' + json.value.items[i].author.name + '</a> ' + json.value.items[i].pubDate + '</dt>';
}
html += '</dl>';
document.getElementById('rss_viewer').innerHTML = html;
}
var s=document.createElement('script');
s.charset='UTF-8';
s.src='http://pipes.yahoo.com/yager/rss2json?_render=json&_callback=showRSSfromJSON&url='+encodeURIComponent('http://creazy.net/atom.xml');
document.body.appendChild(s);
</script>
</body>
</html>

ふむ、良い感じ。
Yahoo!Pipesも重い時はあるんだけど、Yahoo!だし、そうそう落ちる事はないでしょ?(知らんけど)

見ているページのHTMLソースを表示するブックマークレット(Yahoo!Pipes版)

-Pipes, 開発実績

執筆者:


  1. 別サイトに更新情報を載せる方法

    phpやらjsonフィードやら、新着情報(更新情報)表示の方法をいろいろ模索してきましたが、ページがphpじゃなくてもシステムがMovabl…

  2. 匿名 より:

    RSSをJSONに変換する方法を調べていて、yagerさんのページを見つけました。
    とても参考になりました。
    私もscriptを少しは知ってるつもりでしたが、yagerさんが掲載しているソースを見て、
    まだまだだなーと思い知りました・・・。ホント、脱帽でございます。
    これからも良い記事を期待しています。

comment

メールアドレスが公開されることはありません。

関連記事

MyMiniCityをもっと楽しむためのAPI色々

Twitterを中心にMyMiniCityがすごい人気ですね。 オレも作ってみました。 ・http://yager.myminicity.com/ アクセスが増えると街が発展するというゲームなのでクリ …

AmaQuick v3.1.3 ブックマークレット更新(楽天ISBN13対応、商品ID取得不具合解消など)

久しぶりにAmaQuickの更新を行いました。実はアナウンスなしで3.1.2として不具合解消対応も行っていたのですが合わせてご報告いたします。 AmaQuick 公式ページ | Creazy!

Twitterメインの人がTumblrでTwitterするためのUserScript

TumblrがTwitterの機能を飲み込もうとしています。 We’re testing Twitter integration on Tumblr. via: Tweet from Tumblr W …

Tumblr を検索して、API化するYahoo!Pipes「Tumblr Tagged」

以前に、どうにも検索しにくいTumblrを検索しやすくする「Tumblr Search」というYahoo!Pipesを作っていたのですが、いつからか検索されなくなってオカシイナーなんて思ってました。ど …

Google検索結果を一瞬でエクセルに貼り付けるブックマークレット「Google Top10 TSV」

いやー、この手の記事をずいぶん書いてなかったなぁと反省しつつリハビリ状態のヤガーです。 WEBサイト運営などをやっていると、特定キーワードの検索エンジン表示順位などを調べたりすることがあるのですが、S …

スポンサードリンク

スポンサードリンク