Money Forward Developers Blog

株式会社マネーフォワード公式開発者向けブログです。技術や開発手法、イベント登壇などを発信します。サービスに関するご質問は、各サービス窓口までご連絡ください。

20230215130734

地獄のミ、、、rssフィードをjsonフィードに変換するTips

マネーフォワードのプログラマ、奥野(@bugslife)です。

今回は『地獄のミサワrssフィードをjsonフィードに変換するTips』を紹介します。  

やりたいこと

フィードのデータがrssで配信されていて「jsonだったら手っ取り早いのになぁ。。。」とか「javascriptでdomパースが面倒」という事が私はよくあります。

勿論どの言語でも出来るのですが、今回は私の好きなRubyでお手軽にjsonへの変換をしてみます。  

jsonフィードサーバーを作ります

手順は下記の通り。

  1. httpを読み取る (open-uri)
  2. json化する (ActiveSupport)
  3. webサーバを起動する (sinatra)

Rubyだとたったの12行! Rubyの中でも特にsinatraが好きです。 ※json化はqiita@y_matsuwitterさんの記事を参考にさせて頂きました。

[gist id="e9b050ff72aff19525ac"]

こちらを使いたいのはcoffee script(hubot)なのですが・・・  

クライアントも作ります

今回はRubyで利用例を載せます。 こちらも同じノリなのですが、フィードはhtml形式になっていますのでNokogiri 鋸を使いました。

[gist id="7a1a55e1ec8721ae1327"]  

実行!

これを実行すると・・・ [code language="bash"] ruby misawa_sample_client.rb > misawa.html chromium-browser misawa.html [/code]

misawa と、わざわざxpathを解析せずとも、欲しいデータを抽出可能です。

つづく!(かも知れません)