Comment creer un bot discord avec Python

Entièrement programmable et idéal pour traiter des tâches répétitives spécifiques plus rapidement que les humains, un bot discord est la meilleure solution pour les entreprises qui souhaitent gagner du temps et réduire les coûts de main-d’œuvre et/ou qui souhaitent renforcer la sécurité informatique. Dans cet article, nous allons voir ensemble comment créer un bot discord avec Python.

Qu’est-ce qu’un bot discord ?

Le terme « bot » vient de la langue anglaise et fait référence aux robots. Il s’agit de systèmes d’intelligence artificielle (IA) que les chefs d’entreprise ou les spécialistes du marketing utilisent pour automatiser d’innombrables fonctions sur le serveur.

Comme les robots mécaniques, les bots exécutent des programmes définis avec précision sous forme de scripts ou d’algorithmes.

Discord quant à lui est une plateforme populaire de messagerie en temps réel qui prend en charge les bots programmables.

En effet, les bots sont omniprésents sur Discord et fournissent un large éventail de services, notamment l’envoi de textes ou de chats, la création de radios ou de films, le système de modération, le traitement des paiements, la recherche sur Internet, les jeux, l’accueil et l’orientation de nouveaux utilisateurs sur le serveur, le contrôle des interactions des membres de communauté …

Pourquoi Python est-il utilisé pour les bots ?

Python vous permet de programmer des robots dans n’importe quelle séquence d’actions. En outre, il offre un large éventail d’avantages que les autres langages de codage ne possèdent pas. Cela en fait un excellent langage pour la programmation des chatbots.

En effet, le flux de travail intégré de Python vous permet de dépanner les programmes tout en développant le code de votre bot. Le cycle édition/test/débogage rend Python fiable et efficace.

Si vous voulez en savoir plus, vous pouvez accéder à notre Formation Python Intermédiaire en ligne.

Comment créer un bot discord ?

1ère étape : Créer un compte actif sur Discord

Pour créer votre discord bot, vous devez avoir un compte actif sur Discord. Vous pouvez le faire gratuitement en allant sur le site officiel discord.com.

2ème étape : Créer une application Discord

Ensuite, vous avez principalement besoin d’une application Discord dans laquelle vous allez créer un bot et d’un serveur pour faire tourner votre bot. Ce serveur peut être votre ordinateur personnel. Si vous voulez que votre bot soit disponible 24 heures sur 24, 7 jours sur 7, votre ordinateur doit être allumé en permanence.

La plupart du temps, nous utiliserons plutôt un serveur virtuel dédié sur lequel nous pourrons faire tourner notre bot. Il est important de le mentionner, car ces serveurs ont souvent un certain coût. Relativement faibles, certes, mais si vous voulez un bot qui fonctionne en permanence, c’est un élément à prendre en compte.

Vous avez également besoin de Python, en particulier de la version 3.6 qui est une version stable et suffisamment récente pour installer les bibliothèques dont vous avez besoin. Vous allez créer un environnement virtuel pour installer ces bibliothèques et isoler votre application.

En effet, la principale bibliothèque que vous allez utiliser est discord.py que vous allez installer dans votre environnement virtuel et qui vous permettra d’utiliser l’API de discord.

Dans un terminal, vous devez commencer par créer un dossier qui contiendra tout le code de votre application et donc de votre bot. Vous l’appellerez comme vous voulez et vous utiliserez la commande « mkdir » pour créer ce dossier.

3ème étape : Créer une application sur le portail de Développeur Discord

Vous pouvez vous rendre sur le portail de développeur de Discord en allant sur Discord.com et en faisant défiler la page jusqu’au bas de la page. Vous trouverez le portail des développeurs en cliquant sur « développeurs » dans la catégorie « Ressources ».

En cliquant sur « Développeurs », vous serez dirigé par défaut dans l’ « Intro » et vous retrouvez toutes les applications en haut à gauche.

En bas de la page, vous trouverez toutes les documentations de l’API ainsi que par exemple les documentations qui vous permettent d’autoriser votre script à accéder à l’API. Donc vous allez aller sur l’application à gauche et vous allez voir qu’il y a déjà différentes applications qui existent pour différentes utilisations.

Vous allez donc créer une nouvelle application en cliquant sur  » Nouvelle application  » en haut à droite ».

Creer une application sur le portail de Developpeur Discord

Vous donnerez ensuite donner un nom à votre application puis cliquer sur  » Create  » pour valider. De plus, vous pouvez changer l’icône si vous voulez lui donner un aspect plus agréable. N’oubliez pas de sauvegarder après avoir effectué un changement.

Creer le nom de lapplication

Vous verrez sur l’application plusieurs informations comme l’ID d’un client « CLIENT ID » et la clé secrète du client « CLIENT SECRET« . En effet, celles-ci vous permettront d’accéder à l’API via votre application.

Les informations dans lapplication concernant le client

4ème étape : Créer un bot sur le portail développeur Discord

Une fois l’application créée, vous pouvez aller directement dans l’onglet « Bot » du panneau de gauche et cliquer sur « Add Bot ». Pour confirmer, vous appuyez sur « Yes do it ». Votre bot est maintenant créé.

Par défaut, votre bot va héritera de l’icône que vous avez utilisée pour votre application. Pour cela, vous devez changer l’image du bot.

Notez qu’il est très important de garder le Token privé, de ne pas le mettre en clair dans  votre script.

Vous trouverez également sous l’image plusieurs options que vous pouvez modifier comme « Public Bot » par exemple. Votre bot est par défaut public, donc n’importe qui peut ajouter ce bot sur son serveur.

Donc, si vous souhaitez  utiliser ce bot uniquement  pour votre serveur, vous pouvez décocher cette autorisation. Ainsi, vous serez le seul à pourvoir l’ajouter sur un serveur.  N’oubliez pas d’appuyer sur « save change » pour enregistrer les modifications effectuées.

5ème étape : Ajouter le bot à un serveur

Une fois le bot créé, vous devez maintenant l’ajouter à un serveur. Pour cela, vous allez vous rendre dans « OAuth2 » puis dans « URL Generator » qui va vous permettre de générer un lien sur lequel vous allez vous rendre pour ensuite inviter votre bot sur le serveur de votre choix. Vous verrez un paramètre qui va vous permettre de gérer des autorisations pour l’API.

Ajouter le bot a un serveur

Ici, vous serez intéressé par l’autorisation du bot. Pour cela, cochez sur « bot« , une url sera automatiquement créée pour accéder à votre bot directement sur un serveur.

la creation du bot

Mais avant cette étape, vous devez modifier la permission et restreindre l’autorisation de votre bot en cochant par exemple sur « administrator » ou d’autres permissions comme vous le souhaitez.

Et ensuite vous pouvez directement définir les permissions que vous souhaitez donner à votre bot.

modifier la permission et restreindre lautorisation de votre bot

Vous copiez ensuite le lien qui a été généré et l’ouvrez dans un nouvel onglet du navigateur. Vous pouvez ensuite ajouter le bot au serveur de votre choix.

Vous retournez ensuite sur Discord pour vérifier si votre bot a été ajouté à votre serveur. L’information s’affiche sur votre application. Vous verrez votre application et votre utilisateur qui vous permettra d’ajouter ce bot sur le serveur que vous possédez.

Vous choisissez dans la liste des serveurs dans la section « add to server » juste en dessous et ajoutez le bot de votre choix puis appuyez sur « continue« . Vous confirmez ensuite que vous accordez des droits d’administrateur à une application en cliquant sur « autoriser ». Votre bot a été ajouté à votre serveur.

Si tout se passe bien, vous verrez le bot apparaître sur votre serveur dans le coin supérieur droit (hors ligne pour le moment).

6ème étape : Faire passer le bot en ligne

Une fois que votre bot a été ajouté au serveur, vous allez pouvoir vous connectez à votre bot pour qu’il soit en ligne.

Pour cela, vous allez vous rendre dans votre projet et à l’intérieur de ce fichier, vous allez importer le module discord.

Vous allez ensuite créer un client à partir de ce module donc vous allez le mettre dans un variable appelé « client ».

Creer un client a partir dun module

Vous allez ensuite pouvoir lancer ce client en utilisant la méthode « Run »

Utilisation de la methode run

Vous allez ensuite donner votre Token dans la parenthèse. Pour vérifier votre Token, vous devriez aller dans le « Developer Portal », vous revenez ensuite sur votre application et dans l’onglet bot, vous allez copier votre Token et vous revenez dans votre script pour coller ce Token en mettant entre deux guillemets.

comment verifier votre token

Vous allez ensuite lancer votre script en faisant un clic droite sur fichier et en cliquant sur « Run name« . Vous devez attendre un tout petit peu, car pour l’instant il n’y a aucun feed-back donc la seule façon de s’assurer que votre script fonctionne et que votre bot est bien connecté c’est de retourner sur Discord sur votre serveur Discord. Regardez en haut à droite pour voir si votre bot est cette fois-ci en ligne. Si tel est le cas, cela veut dire que le bot a été bien connecté.

verifiez si votre bot est connecte

Si vous retournez dans votre script, que vous l’arrêtez et que vous retournez sur votre serveur Discord, vous verrez qu’il faut quelques secondes, voire jusqu’à une minute, pour que votre bot se remette hors ligne, car votre script n’est plus actif.

Lorsque votre script est en cours d’exécution, cela signifie que votre bot est en ligne et peut réagir aux événements, etc. C’est pourquoi il est important que votre bot soit en ligne 24 heures/24, 7 jours /7. Vous devez donc placer votre script sur un serveur dédié ou un ordinateur dédié. Ce dernier peut être le vôtre pour garantir que votre script fonctionne en permanence.

Pour l’instant, lorsque vous exécutez un script, vous n’avez aucune idée du moment où le bot est réellement prêt à interagir avec un utilisateur.

Pour savoir quand un bot est connecté à un autre serveur, vous pouvez utiliser des événements. Il existe des dizaines d’événements et vous pouvez les trouver tous dans la documentation de discord.py. Vous aurez une référence à tous les événements disponibles et vous trouverez tous les événements que vous pourriez vouloir utiliser.

  • Création de l’évènement « On ready »

Si vous revenez à Général, pour le moment votre bot est hors ligne et vous pouvez retourner à votre code pour configurer l’événement On ready. Cet événement va être une fonction et il est très important que le nom de cette fonction soit exactement le même que le nom de l’événement. Dans ce cas, l’événement qui vous intéressait est « On ready », donc votre fonction doit s’appelait « On ready ».

Maintenant il ne nous reste plus qu’à créer le fichier run.py, qui sera utilisé pour démarrer le projet :

creation de levenement on ready

Pour que votre bot soit correctement connecté, vous devez intégrer les codes suivants dans l’ordre indiqué :

ordre des codages pour que bot soit correctement connecte

Pour effectuer d’autres opérations comme poster un message ou une vidéo, assurez-vous que le bot soit prêt pour pouvoir le faire. Vous pouvez voir ce message juste en dessous.

  • Création de l’évènement « On message »

L’évènement « On message » est appelé à chaque fois qu’un message est posté sur un serveur.

Le if message.author == self.user sert à vérifier que le Bot n’est pas l’auteur du message.

La syntaxe async est utilisée pour créer des fonctions asynchrones.

Le mot-clé await est utilisé pour s’assurer que les choses se passent dans le bon ordre.

Lower permet d’écrire en majuscule ou en minuscule le code.

Creation de levenement on message

Grâce à ces codes, vous pouvez voir comment réaliser un chat bot très simple, mais qui vous montre tout de même la logique qui se cache derrière. Nous avons à chaque fois des événements temporels et nous allons réagir à ces événements de différentes manières avec du code python. Il est très important d’utiliser tout ce que vous avez à disposition dans les événements.

Il est aussi essentiel d’utiliser tout ce que vous avez dans la documentation. Cela semble effrayant, mais vous verrez que tout est très bien expliqué. Par exemple, si vous souhaitez que le message s’autodétruise après un certain nombre de secondes, vous avez par exemple l’élément « delete after » que vous pouvez utiliser dans votre fonction. Exemple : delete after= 5 c’est à dire supprimer le message après 5s.

codage delete after

Ces deux événements ne sont que des exemples, c’est à vous de découvrir et d’utiliser tous les autres événements tels que l’événement réagissant à l’arrivée d’un nouveau membre, etc.

Si vous voulez réussir votre projet, il vous faudra maîtriser les bases du langage de programmation Python.

Partagez ce bon plan avec vos amis !

Formation Python CPF

Apprenez Python avec un formateur professionnel et certifié.

  • Des cours particuliers en visioconférence avec un professeur dédié.

  • Une plateforme en ligne pour vos exercices et supports de cours.

  • Un programme adapté à votre profil et à vos disponibilités créé par votre professeur.
  • Un coach pédagogique dédié, joignable 6j/7 pour vous conseiller et répondre à vos questions.
  • Composez votre formation sur-mesure parmi un  large choix de modalités pédagogiques.

c’est le taux de satisfaction moyen de nos stagiaires.

Note formations Clic Competences 4.8

des stagiaires recommandent nos formations.

Pourquoi se former avec Clic Campus ?

Pourquoi se former avec Clic Campus ?

blended learning 1

COURS PARTICULIERS + PLATEFORME EN LIGNE

Découvrez le Blended learning : alternez entre cours particuliers et travail en autonomie pour apprendre plus facilement.

web plugin 1

DES FORMATIONS ULTRA-PERSONNALISÉES

Un programme 100% sur-mesure créé par un formateur professionnel qui vous est dédié.
hand 1

ÉLIGIBLES AUX FINANCEMENTS

Toutes nos formations sont éligibles aux financements CPF, Pôle Emploi, OPCOs, Régions, FNE…