えっ
諸事情により集計ができなくなったので #花園たえRanker はおしまいです
お疲れ様でした、やりきったかい?— 九大花園たえ研究会(九花研) (@QU_Tae_Hanazono) 2018年4月25日
えっ
諸事情により@QU_Tae_Hanazono に変わってさーやテックが務めさせていただきます
第286回花園たえ 結果発表です pic.twitter.com/j6xRuuzLN9— 東工大山吹沙綾研究会(さーやテック) (@Saya_titech) 2018年4月25日
えっ
というわけで東工大山吹沙綾研究会さーやテックの中の人に頼まれて花園たえRankerを復活させました。
そもそも花園たえRankerとは
なんか毎日午前0時に「花園たえ」ってつぶやいた人の精度を競うRankerらしいです。
334ってあるじゃないですか334。
あれの午前0時版だと思ってくれればいい感じだと思います。
【参考】
ちなみに僕は存在は知ってますが参加したことはありませんでした。(過去形)
花園たえって…😩💭ダレヤ…
うごかしてみた
さーやテックの中の人に実行環境がととのってないとのことで(整備してもいいんですが割と急務とのことだったので)、自分のサーバにおいて毎日0:05に実行されるようにしました。
集計した結果は自分のアカウントを通して中の人にDMで送信される仕組みになっており、それを中の人がコピペして発表するって手順です。
記念すべき第1回(第287回)の結果はこちら(自分も初参加しました。)
第287回花園たえ 結果発表です pic.twitter.com/hGRIKmfHir
— 東工大山吹沙綾研究会(さーやテック) (@Saya_titech) 2018年4月26日
00:00:00.538で6位…みんな強い…
無事に動いてくれてなにより。
しくみ解説
ソースコードです。(1時間15分で作った)
GitHub - nagatea/Something_Ranker: 毎日午前0時に行われるらしい何かを集計するBot
ソースコード読める人なら分かると思うんですけど、そんなに難しいことやってないです。
- 検索して「花園たえ」に一致するツイートを抜き出す
- ツイートIDから時間を算出する
- 23:59:00から00:04:59までのツイートを集計してランキングを付与する
- 結果を中の人にDMで送信する
って感じで作成しました。
解説するならツイートのミリ秒の判定のしかたでしょうか。
ツイートIDから正確なツイート時間を算出する
実はツイートID(ツイートのURLについてくるやつ)、ツイートされた正確な時間を保存しています。
算出の仕方は、ツイートIDの下位22bitを落として、1288834974657
を足すと、タイムスタンプ(単位ミリ秒)が生成されます。
それを1000で割るとミリ秒つきのツイート時間が分かるという感じです。
【参考】
ツイートIDからツイート時刻をミリ秒まで算出(ついでに時刻からツイートIDを作成) #Ruby - Qiita
自分は以前から334Rankerには参加していたので(寝ろ)、これを自分のbotに組み込んで遊んでました()
おしまい
何気に人に頼まれてものを作るのは初めてな気がします。
ちゃんと動いてくれてよかった~~~