PostgreSQLデータベースへのTwitchのチャットを記録するためのシンプルなPythonアプリ。視聴者の数またはチャネルの特定のリストによって順序付けられるチャネルの任意の賞金(デフォルトは100)を記録します。 Twitchは、大量のチャネルを結合する単一のボットのようには見えないため、各ボットは20チャンネルに制限されています。このアプリは、ログに記録するチャネルの数に応じてボットの数を自動的にスケーリングします(たとえば、100チャンネルをログすると、5つのボットが作成されます)。最も人気のあるチャネルのリストは60秒ごとに更新され、ボットは必要に応じてチャネルを結合して出発します。
100チャンネルを24時間ログに記録すると、約400万回のチャットライン(約400 MB)になります。
gitを使用してこのレポをインストールします。
git clone https://github.com/bernardopires/twitch-chat-logger.git
チャットチャンネルを接続してログするには、Twitchアカウントが必要です。 settings.py
という名前のファイルを作成します(例は名前settings.py.example
で提供されています)。アカウント資格情報を使用してIRC
Settings Dictionaryを更新します。ヒント:Twitch Chat OauthパスワードジェネレーターからOAuthパスワードを取得できます。
IRC = { 「サーバー」:「IRC.TWITCH.TV」、 「ニック」:「Twitch_username」、 「パスワード」:「Your_oauth_password」、 「ポート」:6667、 }
このプロジェクトは、Twitch APIから最も人気のあるチャネルをプルするようリクエストします。これを行うには、 Client-Id
を取得する必要があります。クライアントIDは、Twitch> Account Settings> Conections`と新しいaplication(ページの下部に)を登録することができます。次に、API辞書の設定ファイルに追加します。
API = { 「clientId」:「あなたのIDがここに行く」 }
Dockerとイチジクを使用している場合、あなたはすべて設定されています。
イチジク
それ以外の場合は、まだ持っていない場合はPostgreSQLデータベースをインストールし、 twitch
という名前のデータベースを作成します。資格情報を使用して、 settings.py
内のDATABASE
辞書を更新します。
データベース= { 「名前」:「Twitch」、 「ユーザー」: 'database_username'、 「パスワード」: 'database_password'、 「ホスト」:「LocalHost」、 }
create_tables.sql
を実行して、必要なテーブルを作成します。
psql twitch -f create_tables.sql -u your_db_username -h localhost -w
PITHONライブラリの依存関係をPIPでインストールします。
PIPインストール-R要件。txt
最後に、準備ができています! psycopg2
をインストールするエラーが発生した場合、 apt-get install libpq-dev python-dev
実行する必要がある場合があります。
python main.py
上記のコマンドは、100の最も人気のあるTwitchチャネルを記録する5つのボットを開始します。異なる量をログにするには、パラメーターn
使用し、チャネルの特定のリストをログにログに記録し、パラメーターc
使用し、出力をファイルに保存するにはパラメーターf
使用します。たとえば、以下のコマンドを使用して、 log.txt
という名前のファイルに出力が保存されている50の最も人気のあるチャネルを記録します。
python main.py -n 50 -f log.txt
チャネルの特定のリストをログに記録するには、Whitespaceでチャネル名を分離します。
python main.py -c channel1 channel2 channel3