今回Twitterのアカウントごとの人気ツイートを表示するWebサービス、「ベスツイ」をリリースしましたのでその仕組みについて解説します。
Bestwiーベスツイー
https://www.bestwi.net/
Twitter APIを介してアカウントのつぶやきを分析し、リツイートされた回数やいいねされた回数の多い順に表示し、興味のあるアカウントのツイートでどれがもっとも人気があるかが一目でわかるというサービスです。
仕組みとしては単純で、
1.スクリーンネーム(「@twitter」のように表示されているID)で指定したアカウントのツイートをTwitter APIを叩いて取得します(statuses/user_timeline)。
2.取得したつぶやき一覧をリツイート回数、いいね回数を対象にソートします。
3.プロフィール画像やユーザー名、つぶやきなどのデータをhtmlに流し込み表示します。
と仕組み自体は単純なのですが、少々考えたのはデータの更新のための仕掛けでしょうか。
どのタイミングでTwitter APIをもう一度叩き、データを再取得するかなのですがこれはAPIを呼び出した時にタイムスタンプを押しておいてユーザーがデータを閲覧しようとしたときに現時刻と比較して一定程度時間が経過したと判断したらもう一度APIを呼ぶ、という仕組みにしています。
また運営してみて改良点や課題などが見えてきたら追記いたします。