[PYTHON] Faisons un robot Discord.

J'ai créé Discord Bot avec Python sur un coup de tête, je vais donc l'introduire dans la procédure. computer_jinkou_chinou.png

Créer un environnement

Télécharger discord.py

Installez discord.py avec pip dans l'environnement de développement Python.

python3 -m pip install -U discord.py

Enregistrer le bot avec le PORTAIL DES DÉVELOPPEURS

Accédez au PORTAIL DE DÉVELOPPEURS et enregistrez votre Bot. Cliquez sur Nouvelle application </ b> et choisissez un nom pour votre bot. image.png Sélectionnez Bot dans le menu et cliquez sur Ajouter un bot </ b> pour Build-A-Bot. image.png Lorsque cet écran apparaît, changez le nom et l'icône du Bot en ce que vous voulez. image.png

Obtenir un jeton

Cliquez sur Cliquez pour révéler le jeton </ b> et copiez le jeton. (Les jetons ne le disent pas aux autres (ils seront détournés) </ b>)

Rejoignez le Bot sur le serveur.

Vous ne pouvez pas parler à moins de mettre le Bot sur le serveur. Pour mettre le Bot sur le serveur, cochez la case Bot </ b> d'OAuth2 dans le menu et accédez au lien qui apparaît ci-dessous pour rejoindre le Bot. (Je pense que c'est une bonne idée de définir les autorisations en fonction de l'utilisation prévue du Bot.) image.png

Ecrire un programme Bot

Créez un fichier Python et ouvrez-le.

Importez Discord.py installé avec pip.

import discord #Discord.Importer py

TOKEN = "YOUR TOKEN" #Écrivez le jeton ici.
client = discord.Client()

Écrivez un processus pour envoyer un message lorsque le Bot est en ligne et prêt.

@client.event
async def on_ready(): #Quand le bot est prêt
   print("Bot connecté")
   ChannelID = int(0000000000000) #Écrivez l'ID de canal à envoyer
   channel = client.get_channel(ChannelID)
   await channel.send("Je suis ici!")

Écrivez le code pour répondre avec une chaîne de caractères spécifique.

@client.event
async def on_message(message)
   if message.author.bot: #S'il s'agit d'un Bot, il ne répondra pas
        return
   if message.content == "/hello": #/Quand bonjour est envoyé
        print("/bonjour a été exécuté.")
        await message.channel.send("salut!")

Écrivez le code pour démarrer le Bot.

client.run(TOKEN)

Outre on_ready () et on_message () ..

En plus de on_ready () et on_message (), il existe les gestionnaires d'événements suivants.

  • Assurez-vous d'écrire `` @ client.event``` et `ʻasync def```.
@client.event
async def on_member_join(member): #Lorsqu'un nouvel utilisateur rejoint
  #En traitement
@client.event
async def discord.on_voice_state_update(member, before, after): #Lors de l'entrée et de la sortie du canal vocal masculin
  #En traitement
@client.event
async def on_reaction_add(reaction, user): #Lorsqu'une réaction est ajoutée
  #En traitement

Exemple de description de code

Discord_Bot.py


import discord #Discord.Importer py

TOKEN = "YOUR TOKEN" #Écrivez le jeton ici.
client = discord.Client()

@client.event
async def on_ready(): #Quand le bot est prêt
   print("Bot connecté")
   print("----------")
   ChannelID = int(0000000000000) #Écrivez l'ID de canal à envoyer
   channel = client.get_channel(ChannelID)
   await channel.send("Je suis ici!")

@client.event
async def on_message(message)
   if message.author.bot: #S'il s'agit d'un Bot, il ne répondra pas
        return
   if message.content == "/hello": #/Quand bonjour est envoyé
        print("/bonjour a été exécuté.")
        await message.channel.send("salut!")
@client.event
async def on_member_join(member): #Lorsqu'un nouvel utilisateur rejoint
        print("Participation des nouveaux utilisateurs")
        await message.channel.send("Bienvenue!")
@client.event
async def discord.on_voice_state_update(member, before, after): #Lors de l'entrée et de la sortie du canal vocal masculin
        print("Mise à jour du canal vocal")
        await message.channel.send("Il y a du mouvement dans le canal vocal...")
@client.event
async def on_reaction_add(reaction, user): #Lorsqu'une réaction est ajoutée
        print("réaction")
        await message.channel.send("Il a réagi!")

client.run(TOKEN)

Essayez de déplacer le bot

Enregistrez-le avec Ctrl + S et exécutez-le.

$ python Discord_Bot.py
Bot connecté
----------

Si vous voyez cet affichage, vous avez réussi. Après cela, je pense que vous devriez ajouter vos fonctions préférées.

Résumé

Discord Bot a une bibliothèque pratique appelée discord.py, vous pouvez donc la créer facilement. Veuillez l'essayer (^ ▽ ^) /

Citation

Recommended Posts