Cet article est l'article du 25ème jour de VTuber Tech # 1 Advent Calendar 2019. Je travaille habituellement en tant que Vtuber sous le nom Soki Tamaki.
J'ai créé une application qui permet au chat de circuler de droite à gauche. Nous avons également implémenté des commandes pour changer la couleur de la police, lire l'audio et faire pleuvoir.
Test fonctionnel Utilisation réelle (dernière livraison)
↓ Veuillez l'utiliser comme vous le souhaitez. Code source Celui qui a été converti en exe avec pyinstaller
Entrez l'ID de livraison (celui de l'URL) à côté de l'ID de fenêtre qui apparaît lorsque vous le démarrez et appuyez sur le bouton OK. S'il n'y a rien, le commentaire s'affichera sur l'écran vert.
setting.json
"chat_id" Saisissez ici l'ID de livraison. (Vous pouvez le saisir sur le logiciel au démarrage)
Vous pouvez changer la résolution de la fenêtre avec [Résolution verticale, résolution horizontale] de "win_size".
Vous pouvez spécifier la couleur d'arrière-plan avec [R, V, B] de "back_color".
chat_setting.json
Vous pouvez spécifier le fichier de police à utiliser par défaut avec "plain_font_path".
Vous pouvez définir des commandes vocales avec "sound_commands". Vous pouvez également en ajouter de nouveaux.
Vous pouvez définir des commandes pour changer la vitesse des caractères avec "speed_commands". Si vous spécifiez un signe moins pour "vitesse", il s'écoulera de la direction opposée.
Vous pouvez définir des commandes pour changer la couleur du texte avec "color_commands". Spécifiez avec [R, G, B]. "contour_color" est un paramètre de couleur de bordure avec un seul point.
Vous pouvez définir des commandes qui déposent des caractères au hasard avec "rain_commands". Tout personnage dans "drops" tombera aléatoirement du haut pendant le nombre de secondes de "temps". Vous pouvez définir la vitesse et l'accélération initiales.
~~ Au début, j'ai été obligé de discuter avec Selenium ~~
J'ai pu me le permettre en utilisant pychat (merci). Cela fonctionnait simplement en passant l'ID dans l'URL de livraison.
Exemple de code
from pytchat import LiveChat
import time
def main()
chat = LiveChat("Mettez l'identifiant ici", callback = func)
while chat.is_alive():
time.sleep(3)
#Écrivez votre processus préféré
#Si vous passez une fonction à l'argument de rappel, vous recevrez des chats régulièrement.
def func(data):
for c in data.items:
print(f"{c.datetime} [{c.author.name}]-{c.message} {c.amountString}")
data.tick()
Cependant, il y avait un bogue que Python n'a pas quitté lorsqu'il a été intégré à l'application.
Quand j'ai appelé chat.terminate ()
, cela s'est terminé normalement.
Il existe une référence de traduction japonaise, donc je l'ai fait en la regardant.
--pygame peut mettre à la fois des chaînes et des images sur des objets Surface
--Je suis tombé sur la spécification de la police installée, alors j'ai chargé directement .ttf
.
--Lorsque l'emoji arrive, il sera tué, alors détruisez l'emoji
--Fonction de commande
Préparez simplement un processus pour les commentaires qui incluent des chaînes de caractères telles que / red
En réécrivant json, vous pouvez augmenter le nombre de commandes qui sonnent les couleurs et les sons du texte comme vous le souhaitez.
Lire l'audio
--Bien sûr, vous pouvez le faire avec pygame
--Utilisation de la classe mixer.Sound
pour les effets sonores
Entrée ID --pygame n'a pas de formulaires de saisie et de boutons familiers --Affichez une fenêtre pour saisir l'ID avec tkinter au démarrage
―― Le plaisir de discuter ――C'est amusant d'augmenter le nombre de commandes autant que vous le souhaitez
Recommended Posts