一个简单的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