久しぶりのYahoo! Pipes。でもたいしたものじゃないです。
最近作ったpageinfoの中で、ページのタイトルを取得しているところがあります。このとき、ソーシャルブックマーク(SBM)のAPIを使ってそのSBMに登録されてるタイトルを取ってくるようにしていたのですが、del.icio.usにはそういうAPIが(たぶん)ないので、あきらめていました(それ以外のSBMサービスから取得していた)。
で、どうにかしようと思ってdel.icio.usのページを見てみたところ、どうやって記事タイトルを決定しているのかがよくわかりません。なんか多数決っぽい?とりあえず、最初にブックマークした人のタイトルを取得できるようなAPIをYahoo! Pipesで作ってみました。タイトルを取得する方法は今後変えるかも知れません。
いつものYahoo! Pipesアプリの使い方です。パラメータはurlだけです。RSS/JSON/JSONP/htmlで取得できます。
戻ってくるデータは、1件だけアイテムを持ちます。もしdel.icio.usにそのURLが登録されていなかったら、0件のアイテムを持つデータが返ります。
ソースは以下。
最近追加されたらしい Sub-element モジュールを初めて使ってみました。どうやら指定した要素をルートとするデータ一覧を取り出すモジュールのようです。例えば、あるブログで使われているタグの一覧とかを取り出したりできるのかな?よくわかりませんが、今回はtitle以外の情報を切り捨てるのに役に立った。
新規に要素をでっちあげる方法が良くわかりません。今回はlink要素を新規に作りたかったのですが、方法が無かったので、Renameモジュールでいったん適当なデータが入ったlink要素を作って、Regexで本当のデータを全置換して入れています。
実際pageinfoでこのAPIを使ってタイトルを取り出すようにしたいと思いますが、もうちょっとやりたい事があるので、あとで。