一個簡單的Python應用程序,用於將Twitch的聊天記錄到PostgreSQL數據庫。它記錄了由觀看者數量或特定頻道列表訂購的頻道(默認值為100)的任意峰值(默認值為100)。 Twitch似乎不是一個連接大量通道的一個機器人,因此每個機器人都限制在20個通道上。該應用程序會根據要記錄多少通道自動縮放機器人的數量(例如,記錄100個通道將導致創建5個機器人)。每60秒更新一次最受歡迎的頻道列表,並根據需要加入機器人並留下頻道。
將100個頻道記錄24小時似乎總計約400萬個聊天線(約400 MB)。
使用git安裝此倉庫。
git克隆https://github.com/bernardopires/twitch-chat-logger.git
需要一個抽搐帳戶來連接和記錄聊天頻道。創建一個名為settings.py
的文件(示例提供了名稱settings.py.example
),並使用您的帳戶憑據更新IRC
設置字典。提示:您可以從Twitch聊天OAuth密碼生成器中獲取OAuth密碼。
irc = { “服務器”:'irc.twitch.tv', 'nick':'twitch_username', '密碼':'your_oauth_password', '端口':6667, }
該項目提出了從Twitch API中提取最受歡迎的頻道的請求。為此,您需要獲取Client-Id
,您可以進入Twitch>“帳戶設置”> CONECTIONS`並註冊新的Aplication(在頁面底部)。然後將其添加到API字典中的設置文件中。
api = { 'clientId':“你的身份證去這裡” }
如果您使用的是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
使用PIP安裝Python庫依賴關係。
pip install -r要求.txt
最後,你準備好了!如果遇到安裝psycopg2
任何錯誤,則可能必須執行apt-get install libpq-dev python-dev
。
python main.py
上面的命令將啟動5個機器人記錄100個最受歡迎的抽搐頻道。要記錄不同的數量,請使用參數n
,以記錄特定的頻道列表,請使用參數c
並將輸出保存到文件中,請使用參數f
。例如,使用下面的命令記錄50個最受歡迎的頻道,輸出保存到名為log.txt
的文件
python main.py -n 50 -f log.txt
要記錄特定的頻道列表,請通過空格將通道名稱分開。
python main.py -c channel1 channel2 channel3