流行っているのか流行っていないのか、いまいちよく分からない pipes ですが、19日に update があったようです。いくつかの新しいモジュールが追加されました (pipes の blog でのアナウンス)。

百聞は一見に如かず、数もそんなに多くないので本家の例を見るのがいちばん理解しやすいかもしれませんが、以下、簡単に今回追加されたモジュールについて私見も含めてまとめてみました。

Feed Auto-Discovery:

Sources カテゴリに追加されました。ページの URL を与えると pipes がその URL が示すドキュメントの link タグからフィードを自動的に見つけ、そのフィードを pipes のインプットとして使えるというモジュールです。要はRSS Reader で良く見かける機能と同じです。

ある RSS がアイテムの中に URL を含んでいたとして、その URL 先のフィードを取ってくるとか、そういうことに使えそうです。User Inputs モジュールを使って利用者に URL を入力させるような pipe を作る場合は、このモジュールが使えるかもしれません。

Item Builder:

これも Sources カテゴリへの追加です。任意の「属性・値」のペアを任意の個数ならべたアイテムを 1 つ作ることができるモジュールです。これ単体では殆ど意味をなさないと思いますが、属性・値ともに他の文字列や URL などを接続できるようになっているため、後述の Loop モジュールと組み合わせると強力な表現力を発揮できると思います。

Loop:

ここから Operation カテゴリへの追加です。これの追加により For Each: Annotate と For Each: Replace の 2 つのモジュールが deprecated になりました。 Loop モジュールは特定のサブモジュールと組み合わせて使わます。サブモジュールへの入力には Loop モジュールへ入力されたアイテムの特定のフィールドを指定し、Loop モジュールでは入力されたアイテムの数だけサブモジュールが繰り返し処理を行います。

Loopモジュールの出力には 2 種類あって emit と assign があります。 assign はこれまでの For Each モジュールと同じようにインプットとなったアイテムのフィールドにサブモジュールの出力を追加または置き換えするものです。emit の方はサブモジュールの出力をそのまま Loop モジュールの出力にするものです。emit の使い方でこれまた面白い pipe が作れそうな気がします。

Reverse:

アイテムの並びを逆順にするものです。新しいモノから読みたい RSS などに対しては意味がないかもしれませんが、CSV や Data を Feed として使うモノには有用な気がします。

Sub-element:

アイテムの特定のフィールドを抜き出したモノを出力するものです。このモジュールで特定のフィールドを抜き出して、unique で重複を省き emit 型 Loop への入力にするとか、そういう使い道でしょうか。UNIX コマンドで言うと cut みたいなものです。

Tail:

これまで Head と Sort があり、今回 Reverse が追加されたのですから、 Tail が追加されるのもある意味当然のことなのかもしれません。これも使い道は Data 系 Feed への適用という感じでしょうか。

Translate:

これまでも Babel Fish という翻訳モジュールがありましたが、Translate モジュールは Loop のサブモジュールとして追加できるようになりました。タイトルのみ翻訳とか。

String Regex:

文字列や URL を入力に取る Regex モジュールです。User Input の正規化などに使えそうな気がします。これを Loop のサブモジュールに組み込むと従来の Regex モジュールと同様になります。

String Builder:

String Concatenate から名称が変わっただけのようです。

おまけ: pipes でいろんな RSS を使っていると、レスポンスヘッダに charset 宣言のない RSS が結構あることに気づきます。 content-type が text/xml で charset のないものは ISO 8859-1 と見なされて日本語が総文字化けしてしまいます。今のところは youtube の REST API のレスポンスがそんな感じ。Yahoo!知恵袋は昔そうでしたが、問い合わせたら対応してくれました。教えて goo は検索結果 RSS の URL に含まれる検索ワードのパラメータが EUC-JP なので pipes での利用はお手上げ状態です。

トラックバック(1)

このブログ記事を参照しているブログ一覧: Yahoo! pipes に追加されたモジュールについて

このブログ記事に対するトラックバックURL: http://tsuyuguchi.com/mt/mt-tb.cgi/303

Yahoo! Pipes にまたまた新機能が搭載されたようです。 Web Ser... 続きを読む

コメントする

最近の画像

料理が少し楽しくなるかもしれないグッズ
江戸糸あやつり人形
江戸糸あやつり人形
おうち、
新橋青空大判将棋
「天体の回転について」読了
「幼年期の終り」読了
「数学ガール/フェルマーの最終定理」読了
ハリー・ポッター 最終巻
もう炊飯器いらないかも

私の本棚

 

自転車走行距離

Flickr Photos

なかのひと

Y!ログール

このサイトについて

あわせて読みたいブログパーツ

2008年11月

            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

アーカイブ

My Update

  • Loading...

その他