Une application Python simple pour la journalisation du chat de Twitch avec une base de données PostgreSQL. Il enregistre une balle arbitraire de canaux (par défaut est un 100) commandé par le nombre de téléspectateurs ou une liste spécifique de canaux. Twitch ne semble pas comme un seul bot rejoignant une grande quantité de canaux, donc chaque bot est limité à 20 canaux. Cette application évolue automatiquement le nombre de bots en fonction du nombre de canaux à être enregistrés (par exemple, la journalisation des 100 canaux entraînera la création de 5 robots). La liste des canaux les plus populaires est mise à jour toutes les 60 secondes et les bots rejoignent et laissent les canaux au besoin.
L'enregistrement de 100 canaux pendant 24 heures semble s'élever à ~ 4 millions de lignes de chat (~ 400 Mo).
Installez ce référentiel à l'aide de Git.
git clone https://github.com/bernardopires/twitch-chat-logger.git
Un compte Twitch est nécessaire pour connecter et enregistrer les canaux de chat. Créez un fichier nommé settings.py
(un exemple est fourni avec le nom settings.py.example
) et mettez à jour le dictionnaire des paramètres IRC
avec vos informations d'identification de compte. Astuce: vous pouvez obtenir votre mot de passe OAuth à partir du générateur de mot de passe OAuth Twitch Chat.
Irc = { «Serveur»: «irc.twitch.tv», 'Nick': 'twitch_username', 'Mot de passe': 'your_oauth_password', «Port»: 6667, }
Le projet fait des demandes pour tirer les canaux les plus populaires de l'API Twitch. Pour ce faire, vous devez obtenir votre Client-Id
que vous pouvez aller à Twitch> Paramètres de compte> CONECTIONS` et enregistrer une nouvelle aplication (en bas de la page). Ajoutez-le ensuite au fichier de paramètres dans le dictionnaire API.
Api = { «ClientId»: «Votre identifiant va ici» }
Si vous utilisez Docker et Fig, vous êtes tous définis.
figurer
Sinon, installez la base de données PostgreSQL si vous ne l'avez pas encore fait et créez une base de données nommée twitch
. Mettez à jour le dictionnaire DATABASE
dans settings.py
avec vos informations d'identification.
Base de données = { «Nom»: «Twitch», 'Utilisateur': 'database_username', 'Mot de passe': 'database_password', 'Hôte': 'localhost', }
Créez les tables nécessaires en exécutant create_tables.sql
.
psql twitch -f create_tables.sql -u your_db_username -h localhost -w
Installez les dépendances de la bibliothèque Python avec PIP.
pip install -r exigences.txt
Enfin, vous êtes prêt! Si vous rencontrez des erreurs installant psycopg2
, vous devrez peut-être exécuter apt-get install libpq-dev python-dev
.
python main.py
La commande ci-dessus démarrera 5 bots enregistrant les 100 canaux Twitch les plus populaires. Pour enregistrer un montant différent, utilisez le paramètre n
, pour enregistrer une liste spécifique des canaux, utilisez le paramètre c
et pour enregistrer la sortie dans un fichier Utilisez le paramètre f
. Par exemple, utilisez la commande ci-dessous pour enregistrer les 50 canaux les plus populaires avec la sortie enregistrée dans un fichier nommé log.txt
python main.py -n 50 -f log.txt
Pour enregistrer une liste spécifique des canaux, séparez le nom des canaux par Whitespace.
python main.py -c canal Channel2 canal2