読者です 読者をやめる 読者になる 読者になる

White Box技術部

WEB開発のあれこれ(と何か)

【自作ツール紹介】 Twitterのユーザ名からイベント参加情報を抽出するツール「Circle Checker」

なぜ余裕を持って行わないのか・・・

原稿に追われていようといまいと、不精な性格が災いして、 イベント直前にならないとサークルチェックをしない私のような人に「余裕を持って行え」とか言っても無駄なので、 プログラマらしくプログラムで解決を図ってみました。

Circle Checker

イベントにサークル参加する方は、Twitterアカウントの名前に直前の参加イベントの情報を追加している事が多いので、 その情報を元にしたサークルチェックのツールを作りました。

使い方

まず、Javaをお使いのPCにインストールしてください。
READMEにはJava SEと記載していますが、Java REでも構いません。

今のインストーラなら環境変数への設定も自動で行われたような気がするので、 インストール後、WindowsならコマンドプロンプトMacならターミナルを起動し、 java -versionを入力し、実行した結果が正常に返ってくること(バージョンが1.8以上になっていること)が確認できたら大丈夫です。
(以降、コマンドプロントとターミナルのことをコンソールと表記します)

ツール準備

releasesからcircle-checker-X.X.X.zipのようなファイルを取得し、適当な場所に展開してください。
(コンソールを利用する関係上、日本語ディレクトリ配下ではない方が都合がいいです)

展開したディレクトリの中にある以下の設定ファイルを、条件に合うように修正してください。

  • config/config.txtcc.target.list = ""の"“の中にチェックするリスト名を入力
  • config/filter.txtにユーザ名に含まれる可能性のあるイベント名を列挙(デフォルトはコミティア用)

filter.txtは上から順番にパターンマッチを行うので、長い文字列は最初に持ってくるのをお奨めします。

また、上記ファイルの文字コードUTF-8である必要があります。
Windowsのメモ帳などでは文字化けする可能性があるので、sakura editorなど文字コード指定ができるエディタをご利用ください。

ここまでの準備ができたら、コンソールからcircle-checker-X.X.X.jarがある場所まで移動し、以下のコマンドを実行してください。 (X.X.Xはそのときのjarファイルのバージョン番号であると仮定します)

java -jar circle-checker-X.X.X.jar

リストのサイズによっては少し待ちますが、後は出力結果を元にサークルチェックするだけです!

ちなみに2013年のMacBook Proで1000くらいのユーザが登録されているリストを対象にして実行したところ、結果出力までに体感で4、5秒くらいかかりました。

似たようなツールあるけど何で作ったの?

ここまで説明しておいて何ですが、似たようなツールならWebで使えるものが検索するといくつがヒットします。

じゃあなぜ作ったのかというと、単純に自分の利用用途に合わなかったからです。
そして、その利用用途を叶えるため、このツールは以下の特徴を持っています。

Circle Checkerの特徴

  • リスト対象にチェックができる
  • チェックするリストを指定できる
  • フィルタの条件を自分で変えられる(マイナーなイベントでも対応できる)
  • 自分が動かしたいときに動かせる(アプリのWebサーバが止まっているという心配がない)

Webアプリではないので、スマホで処理したい!出先でチェックしたい!というような要望は叶えられませんが、 リストを使ってサークル管理していたり、自分でフィルタ条件をいじりたい人には使えるものになっているのではないかと思います。

また、他アプリによっては、サークルスペースも抜き出してくれるものがありますが、 サークル配置図にマッピングするための情報は「Twitter Name」に出ているので、今のところ追加する予定はありません。

ここのメンテでサークルチェックができなくなったら本末転倒なので。

雑記

前から作りたいなーと思っていたツールだったのですが、不精がすんなり作るわけもなく結局作らないでいたものの一つでした。

それをコミティアを当日に控えた深夜3時、

reinsのコード参考にしたら1時間でいけるんじゃ?!
そしたらTwitterとカタログ見るより早いな!!

と深夜テンションで始め、結局4時間くらいかけて終わらせ、

カタログ見た方が早かったのでは・・・

と思ったりもしてしまいましたが、それはさておき。

こんな理由で作ったものなので、要件を満たしたものがあっても既存のアプリは元々使わなかったんでしょうね。

後は、コードが公開されていないのをどこまで信じれるかというプログラマ故の面倒くさいところと、 単純にコーディングしたかったという理由もありますが。

実際に使ってみたところ、結果に出てくるTwitterアカウントへのリンクが便利でした。
iPhoneのメモに結果を貼っておいたら、URLをタップするとTwitterアカウントの表示ができたので、 電車の中でサークルチェックができました。

それで思いましたけど、お品書きが固定ツイートになっていると、すごく助かりましたね・・・

お陰でコミティアでは良い感じにお札が溶けたことを併記しておきます。