Yahoo!Pipeが終了して全自動はてブ棚卸しが使えなくなってたのでAPI Gateway + Lambdaで自作してみた
はじめに
こんにちは植木和樹@上越妙高オフィスです。2017年になって今更感がありますが、はてなブックマークが10周年を迎えたそうです。
はてブを遡ってみたところ、私は2006年1月から利用を開始したようです。10年以上も愛用させてもらってます。
当時の話題や取り組んでいた仕事に関係するページを次々とはてブに登録していくわけですが、自分がどんな事に興味を持っていたのか振り返ってみたくなりました。 その時に見つけたのがYahoo! Pipesというサービスを使った「全自動はてブ棚卸し」です。
下記が当時「全自動はてブ棚卸し」を紹介していたブログです。
ただYahoo! Pipesが2015年9月にサービスを停止してしまい、これに伴ってはてブ棚卸しも終了してしまいました。残念。
そこで今回は「サービスがなければ自分で作ればいいじゃない」ということで、API Gateway + Lambdaを使って「全自動はてブ棚卸し」もどきを作ってみました。
コード
コードはGistにアップしてあります。URLパラメータで渡されたはてなユーザーIDと振り返り年数を元にRSSFeedを取得し、そのまま出力しているだけの簡単なものです。
Serverless Frameworkを使っているので、ファイルをダウンロードしたら下記コマンドでデプロイができます。
$ sls deploy --profile YOUR_PROFILE
コマンドラインでAWSのプロファイルを指定する方法は下記の記事を参考にさせてもらいました。
使い方
できあがったAPI GatewayのURLに2つのURLパラメータをつけてアクセスすると、はてブのRSSが取得できます。このURLをお気に入りのRSSリーダーに登録してください。
https://XXXXXXX.execute-api.ap-northeast-1.amazonaws.com/dev/bookmarks?year=5&user=sample
URLパラメーターの説明
- year ... 何年前のブックマークを出力するか(初期値: 1年前)
- user ... はてなユーザーID
5年前の私はしまじろうに関心があったようですね :)
まとめ
今回はAPI Gateway + LambdaのデプロイにServerless Frameworkを使ってみたくて、ちょっとしたツールを作ってみました。
出力する際にRSSのタイトルも修正して「◯◯◯さんの◯年前のはてブ」みたいに表示してあげると、複数年を登録した時に何年前にブックマークしたページなのでわかりやすくなりそうですね。これは今後のTODOとしておきましょう。
個人的には1年、3年、5年前に自分がブックマークしたページを読みかえすのが好きです。タイトル見ただけで内容を覚えているページもあれば、内容をまったく忘れていてなんでブックマークしたのか思い出せないこともあったりして楽しいです。あと当時の自分のコメントを読んで「あぁ当時はこう考えてたんだな」と成長(?)を実感するかもしれません。
みなさんもはてブの棚卸しをして、過去の自分を振り返ってみてはいかがでしょうか。