seriwb / circle-checker2

自身のTwitterタイムライン、またはリストのユーザ名からイベント参加情報を抽出するツール

Home Page:https://seri.hatenablog.com/entry/2022/06/23/035355

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Circle Checker2

「やばい!サークルチェック全然してない!」

自分がイベント直前に陥るいつものやつを少しでも緩和するために作った、 Twitterのユーザ名からイベント参加情報を抽出するツールです。

設定ファイル(filter.txt)の正規表現を変更することで、さまざまなパターンに対応が可能です。

以前作成したCircle CheckerのRust版です

機能

  • Twitter名に特定の文字列が含まれているユーザを抽出できます
  • タイムラインと自分の作成したリストを複数同時にチェックすることができます
  • 出力結果をヘッダーと一緒にGoogle Spreadsheetsに貼り付けることで、アイコンの画像が表示されます
    • ヘッダー:Twitter ID Twitter Name アイコン 一致イベント名 スペース番号 Twitter URL Twitter Link プロフィール画像

使い方

事前準備

1. 本アプリケーションの取得

releasesからzipファイルを取得し、適当な場所に展開してください。

2. 設定の変更

設定変更が必要な場合は、config/config.tomlをメモ帳などで開いてください。 デフォルト設定ではコンソールにTSV形式で、タイムラインのチェックデータが出力されます。

  • リストを対象にする場合は、target_list = [""]にチェックするリスト名を入力
    • フォローしているユーザを対象にする場合は[""]のままにしておく)
    • 設定例は以下の「ターゲット設定のサンプル」を参照
  • 出力フォーマットをCSVかTSVかを選ぶ
    • CSV:separator = ","
    • TSV:separator = "\t"
  • ファイル出力するかを選ぶ
    • ファイル出力:file_output = true
    • コンソール出力:file_output = false
ターゲット設定のサンプル
target_list = [""]                       // タイムラインの情報を取得
target_list = ["", "リスト名"]           // タイムラインと「リスト名」の情報を取得
target_list = ["リスト1", "リスト1"]   // 「リスト1」と「リスト2」の情報を取得

3. フィルタを設定

チェックしたいイベント名の文字列は、config/filter.txtに優先順で1列ごとに列挙してください。 デフォルトはコミケ用で、イベント名指定には正規表現が利用可能です。

以下のファイルをfilter.txtにリネームすることで、特定イベントのチェックができます。

  • filter_comiket.txt : コミケ用のフィルターサンプルです
  • filter_comitia.txt : コミティア用のフィルターサンプルです

実行手順

Windowsの場合は、フォルダ内にあるcircle-checker.batをダブルクリックして実行してください。

Macの場合は、コンソールからzipファイルを展開した場所まで移動し、以下のコマンドを実行してください。

./circle-checker

初回はTwitter認証のページがデフォルトブラウザで開くので、認証後表示されたPINをコンソールに入力してください。

※Twitterアカウント情報をリセットしたい場合は、tokenファイルを削除してください。

注意

  • filter.txtはUTF-8形式で保存してください。
  • イベント名の指定には正規表現が利用できますが、()は利用できません。
    文字列の括弧をチェックしたい場合は\(のように\でエスケープを行ってください。

また、実行後に以下のようなメッセージが表示された場合は、Twitterの規制にひっかかっていますので、 15分以上待ってから再度実行してください。

Rate limit exceeded

Google SpreadSheet 貼り付け

TSVの場合はA1セルを選択し、「値のみを貼り付け」を実行するだけで大丈夫です。 ただし、Windowsの場合は、コンソールでタブがスペースに置き換わるので、TSVとしてコピーするにはファイル出力を行ってください。

CSVの場合は以下の手順を実施してください。

  1. シートの先頭(A1セル)を選択し、ヘッダー行と一緒にデータを貼り付ける
  2. 貼り付けたセルを選択した状態のまま、メニューの「データ > テキストを列に分割」を実行する
  3. 画像の行をメニューの「表示形式 > 数値」から数値を選択する

License

MIT License

開発情報

  • Rustのインストール
    • 1.61+

各種手順

.secretファイルを作成し、Twitterアプリのコンシューマキーとコンシューマシークレットを設定する。

# ローカル実行
cargo run

# ビルド
cargo build

# リリースビルド
cargo build -r

About

自身のTwitterタイムライン、またはリストのユーザ名からイベント参加情報を抽出するツール

https://seri.hatenablog.com/entry/2022/06/23/035355


Languages

Language:Rust 99.8%Language:Batchfile 0.2%