Yahoo Pipesを使ってRSSリーダーを作ってみました。


土曜日からYahoo Pipesをいじくり回しています。
Yahoo Pipesを使えばAjaxを使わなくても簡単にXMLを操作できるらしく、ちょっとしたブームになっている様です。
ただしヤフーアメリカのサービスなので、作成にはyahoo.comのアカウントを取る事と操作画面やヘルプが全て英語なのが難点です。
日本語で解説しているHPもありますが、公式サイトではないのでまったくの素人が最初から作成するのはちょっと難しいのかもしれません。
googleで「Yahoo Pipes」を検索キーワードにすれば、既にYahoo Pipesで作ったモジュールや解説HPを検索する事ができます。

今回下記のHPを読んでモジュールの作成をしました。

などなど


上記のHPを参考に色々と試行錯誤して作ったのが「人力検索の回答履歴RSSリーダー」です。
人力検索の回答履歴画面からでもRSSを取得できますが、通常のRSSでは「人力検索」「いわし」「アンケート」を別々に取得するので、今回は「人力検索」と「いわし」を併せたRSSを取得して表示するモジュールを作ってみました。


人力検索回答履歴RSSリーダー
(ヤフーアメリカのアカウントがなくても実行する事ができます。)

  • 最初の画面です。 ユーザーアカウントを入力します。

  • 実際に「人力検索」と「いわし」を併せたRSSを表示します。
    人力検索」と「いわし」を区別する為に質問文の最初にタグを付加しています。

  • モジュール作成手順

    • ユーザーアカウントを入力します。 (TextInputモジュール)
    • ユーザーアカウントを「はてなウェブサービスのRSSフィード」に渡します。 (URL uilderモジュール)
    • 人力検索」と「いわし」のRSSを別々に20件づつ取得します。 (Fetch Feedモジュール)
    • title要素の先頭にタグ([人力][いわし])を付加します。 (Regexモジュール)
    • 二つのRSSを結合します。 (Unionモジュール)



    • pabDate要素(質問日時)をソートキーにして最新順にソートします。 (Sortモジュール)
    • 質問日時の新しい回答から20件分を取得します。 (Truncateモジュール)
    • 編集したRSSを出力します。 (Pipe Outputモジュール)


今回は実力不足なのでここまでしかできませんでしたが、最終的には回答履歴RSSから質問のURLを取得し、質問のRSSからユーザーアカウントをキーにして回答を取得して1:1で出力できる様に改良したいと思います。