作ったもの
#名刺代わりの小説10選 というタグが付いているツイートを集計するツールを作りました。
紹介動画:https://youtu.be/6t7r6FFV_QE
URL:https://toptennovels.com/lists?type_id=0
Twitter アカウント:@top10novels
著者ランキング
月別データ
アプリ概要
Twitter API を使用し、#名刺代わりの小説10選というタグがツイートを集計し、データをランキング形式で表示するアプリを作りました。
#名刺代わりの小説10選
金閣寺/三島由紀夫
海辺のカフカ/村上春樹
春琴抄/谷崎潤一郎
博士の愛した数式/小川洋子
夜は短し歩けよ乙女/森見登美彦
こころ/夏目漱石
罪と罰/ドストエフスキー
変身/フランツ・カフカ
容疑者Xの献身/東野圭吾
十角館の殺人/綾辻行人— 名刺代わりの小説10選集計bot (@top10novels) November 1, 2021
上のようなツイートを2日ごとに最大40個集計し、タイトルや著者名などのデータを随時データベースに追加していきます。
このサイトではトップ500 までの作品を票数とともに表示しています。
検索機能もついています。
タイトルで検索をし、どれくらいの人が名刺代わりの小説10選に入れたのか確認できます。
技術スタック
こちらがインフラ構成です。
Front-end
フロントエンドは React.js 。
Back-end
バックエンド・インフラ周りは すべて Firebase で完結しています。デプロイも Firebase で。
- Firestore: データ管理
- Functions: 設定したトリガーでバックエンド処理を自動的に実行
- Hosting: デプロイ
無料プランではなく、従量制の Blaze プランを使用。
Firebase の Schedule functions というものを使用し、設定されたスケジュールで処理を実行しています。
機能の紹介
- データを登録日、票数の項目からソート
- 検索機能 (Algolia を使用)
- 作品別だけではなく著者ランキングも表示
- 集計に使用した累計ツイート数、累計票数を月ごとに表示
ツイートからタイトルと著者名の情報を収集した後、一冊一冊、楽天ブックスAPIを使用し検索にヒットされたもののみカウントしています。
APIは1回につき1秒以上の間隔をあけて、使用しています。
デザインは Material – UI を使用しています。
図はChart.jsを使用。
コメント