YQLで複数ブログのRSSをJSONで取得して、新着として表示する

前に単独のRSSを取得する方法を書いたけど、複数取得を書くのをすっかりわすれていたので。

前回


簡単なのでYQLだけ。ついでに日付順になるようsortも。

select * from rss where url = 'http://d.hatena.ne.jp/yuichi_katahira/rss' or url='http://blog.livedoor.jp/katahirado/index.rdf' | sort(field="date",descending="true");


なお、RSS2.0を混ぜると、日付はpubDateになり、RSS1.0のdate(dc:date)とは異なるので、YQLの結果だけで日付順にするのは無理かと。
あと、Atom,Feed0.3なんかもまぜようとすると、from句をrssからxmlにしないと当然取れない。
で、XMLにした場合は、取れる結果が、各ブログの記事が要素になったフラットな配列ではなく、各ブログのfeedが要素になった結果が返ってくるので、自前で少し加工する必要がある。