Envie de créer votre propre bot Discord en Python mais vous ne savez pas par où commencer ? C’est plus simple que ça en a l’air.
Ce tutoriel vous guide pas à pas pour développer votre premier bot fonctionnel, même si vous débutez.
Tutoriel : Créer votre bot Discord avec Python étape par étape
Ce guide vous montre tout le processus, de zéro jusqu’à un bot qui répond à vos messages. On va utiliser la bibliothèque discord.py, qui est la plus courante pour ce genre de projet. Suivez les étapes dans l’ordre, et tout se passera bien.
Prérequis avant de commencer
Avant de démarrer la création du bot, vous devez vérifier quelques points. Pas besoin d’être un expert, mais ces bases sont nécessaires pour suivre le tutoriel facilement.
- Avoir Python installé : Assurez-vous d’avoir une version récente de Python (3.8 ou plus) sur votre machine. Si ce n’est pas le cas, téléchargez-le depuis le site officiel de Python.
- Connaître les bases de Python : Vous devez savoir ce qu’est une variable, une fonction et une condition (if/else). Pas besoin de plus pour commencer.
- Savoir utiliser le terminal : Vous devez être capable d’ouvrir un terminal (ou invite de commandes sur Windows) et de taper des commandes simples. C’est là qu’on installera la bibliothèque.
- Avoir un compte Discord : C’est évident, mais il vous faut un compte et un serveur sur lequel vous avez les droits d’administrateur pour pouvoir y inviter votre bot.
Étape 1 : Création de l’application sur le portail développeur Discord
La première chose à faire est de dire à Discord que vous voulez créer une application. Votre bot sera rattaché à cette application. C’est une étape administrative, mais obligatoire.
Rendez-vous sur le portail développeur de Discord. Vous devrez vous connecter avec votre compte habituel. Une fois sur la page, cliquez sur le bouton « New Application » en haut à droite. Donnez un nom à votre application, par exemple « MonPremierBot ».
Une fois l’application créée, vous arrivez sur sa page de configuration. Dans le menu de gauche, cliquez sur l’onglet « Bot ». Sur cette nouvelle page, cliquez sur le bouton « Add Bot ». Confirmez, et voilà : votre bot est officiellement créé du côté de Discord.
Étape 2 : Récupération du jeton (token) de votre bot
Le jeton, ou « token », est la clé secrète de votre bot. C’est comme un mot de passe qui permet à votre code Python de se connecter au bon bot sur les serveurs de Discord. Il est donc très important.
Sur la même page « Bot » où vous venez de créer votre bot, vous verrez une section « TOKEN ». Cliquez sur le bouton « Reset Token » (ou « View Token » s’il est déjà visible). Discord vous montrera alors une longue suite de caractères. C’est votre jeton. Copiez-le et gardez-le en sécurité quelque part pour le moment.
Attention : Le jeton de votre bot est strictement confidentiel. Ne le partagez JAMAIS publiquement, par exemple sur un forum ou sur GitHub. Si quelqu’un récupère votre jeton, il peut prendre le contrôle total de votre bot.
Étape 3 : Installation de la bibliothèque discord.py
Maintenant que le bot existe sur Discord, on passe à la partie code. Pour que Python puisse communiquer avec l’API de Discord, on a besoin d’une « traductrice » : la bibliothèque `discord.py`. On l’installe avec `pip`, le gestionnaire de paquets de Python.
Ouvrez votre terminal (Invite de commandes sur Windows, Terminal sur macOS ou Linux). Tapez la commande suivante et appuyez sur Entrée. C’est la commande officielle pour installer la version la plus récente de discord.py.
Le terminal va télécharger et installer les fichiers nécessaires. Si tout se passe bien, vous verrez un message de succès à la fin. Vous êtes prêt à écrire le code.
Étape 4 : Écriture du code de base pour la connexion
On va maintenant écrire le premier script Python. Ce code ne fera qu’une seule chose : connecter votre bot à Discord pour qu’il apparaisse « en ligne ». C’est l’étape la plus importante.
Créez un nouveau dossier pour votre projet sur votre ordinateur. À l’intérieur, créez un fichier nommé `main.py`. Ouvrez ce fichier avec un éditeur de code (comme VS Code, PyCharm ou même le bloc-notes) et collez-y le code suivant :
Expliquons ce que fait ce code :
import discord: Cette ligne charge la bibliothèque que vous venez d’installer.client = discord.Client(...): On crée une instance du « client ». C’est l’objet qui va représenter la connexion de votre bot à Discord.@client.event: C’est un décorateur qui dit à discord.py que la fonction juste en dessous doit réagir à un événement.async def on_ready():: Cette fonction spéciale est appelée automatiquement quand le bot a réussi à se connecter. Ici, elle affiche simplement un message dans votre terminal pour confirmer la connexion.client.run('VOTRE_TOKEN_ICI'): C’est la ligne la plus importante. Elle démarre le bot en utilisant le jeton que vous avez récupéré à l’étape 2. Remplacez `VOTRE_TOKEN_ICI` par votre vrai jeton.
Pour lancer votre bot, retournez dans votre terminal, naviguez jusqu’au dossier de votre projet et tapez la commande `python main.py`. Si tout est correct, vous devriez voir le message « Connecté en tant que [NomDeVotreBot] » s’afficher.
Étape 5 : Invitation du bot sur votre serveur Discord
Votre bot est en ligne, mais il n’est encore sur aucun serveur. Il faut l’inviter. Pour cela, on doit générer une URL d’invitation spéciale.
Retournez sur le portail développeur de Discord, dans votre application. Allez dans l’onglet « OAuth2 », puis dans le sous-menu « URL Generator ». Dans la section « SCOPES », cochez la case `bot`. Une nouvelle section « BOT PERMISSIONS » apparaît en dessous. Pour commencer, vous pouvez cocher « Administrator » pour lui donner tous les droits sur votre serveur de test.
Une URL a été générée en bas de la page. Copiez cette URL, collez-la dans votre navigateur et suivez les instructions. Sélectionnez le serveur Discord sur lequel vous voulez ajouter le bot et autorisez l’invitation. Votre bot devrait maintenant apparaître dans la liste des membres de votre serveur, avec le statut « en ligne ».
Étape 6 : Coder les premières interactions (événements et commandes)
Un bot qui est juste en ligne, ça ne sert pas à grand-chose. On va lui apprendre à réagir. On va voir deux exemples : réagir à l’arrivée d’un membre et répondre à une commande.
Réagir à un événement : souhaiter la bienvenue
On peut faire en sorte que le bot poste un message chaque fois qu’un nouveau membre rejoint le serveur. Pour cela, on utilise l’événement `on_member_join`. Modifiez votre fichier `main.py` pour ajouter ce code :
Note : Pour que ce code fonctionne, vous devez activer les « Privileged Gateway Intents » dans les paramètres de votre bot sur le portail développeur Discord (onglet « Bot »). Cochez la case « SERVER MEMBERS INTENT ». Pensez aussi à remplacer `CHANNEL_ID` par l’ID réel de votre salon d’accueil.
Créer une commande simple : !ping
La base de beaucoup de bots est de réagir à des messages qui commencent par un préfixe (comme `!` ou `?`). On va créer une commande `!ping` qui fera répondre le bot « Pong! ». Pour ça, on utilise l’événement `on_message`.
Voici le code complet à ajouter à votre `main.py` :
Ce code analyse chaque message posté sur le serveur. Si le contenu du message (`message.content`) commence par `!ping`, le bot envoie « Pong! » dans le même salon. La première condition (`if message.author == client.user`) est une sécurité pour éviter que le bot ne se réponde à lui-même en boucle.
Étape 7 (Optionnel) : Héberger votre bot pour qu’il soit en ligne 24/7
Pour l’instant, votre bot ne fonctionne que lorsque le script `main.py` tourne sur votre ordinateur. Si vous éteignez votre PC, le bot se déconnecte. Pour qu’il soit disponible 24h/24, vous devez l’héberger sur un serveur.
Pour les débutants, une solution très simple est d’utiliser une plateforme comme Replit. C’est un éditeur de code en ligne qui peut faire tourner des projets Python en continu. Vous pouvez y importer votre code et le configurer pour qu’il reste actif en permanence, même quand votre ordinateur est éteint. D’autres solutions plus avancées existent, comme les serveurs privés virtuels (VPS), mais Replit est un bon point de départ.
À quoi peut servir un bot Discord ?
Maintenant que vous avez les bases, vous pouvez créer toutes sortes de fonctionnalités. Un bot Discord peut servir à beaucoup de choses, le seul frein est votre imagination. Voici quelques idées courantes :
- Modération automatique : Supprimer les messages contenant des insultes, bannir les spammeurs, ou mettre en sourdine des membres bruyants. C’est une aide pour les modérateurs humains.
- Automatisation des tâches : Poster des annonces à des heures fixes, créer des sondages, ou attribuer automatiquement des rôles aux nouveaux membres.
- Affichage d’informations : Un bot peut se connecter à d’autres services pour afficher la météo, les cours de la bourse, les dernières actualités d’un site, ou le statut d’un serveur de jeu.
- Création de jeux : Organiser des quiz, des jeux de rôle textuels, ou des mini-jeux directement dans les salons de discussion de votre serveur.
- Support client : Répondre aux questions fréquentes des utilisateurs grâce à un système de chatbot, ce qui libère du temps pour l’équipe de support.
- Accueil et intégration : Guider les nouveaux arrivants en leur présentant les règles du serveur, les différents salons et les personnes à contacter.
Pourquoi choisir Python pour développer un bot Discord ?
Il existe d’autres langages pour créer un bot Discord (comme JavaScript avec discord.js), mais Python est un excellent choix, surtout pour les débutants. Voici les principales raisons :
- Facile à apprendre : La syntaxe de Python est claire et se lit presque comme de l’anglais. C’est l’un des langages les plus accessibles pour commencer la programmation.
- Une bibliothèque puissante : La bibliothèque `discord.py` est très complète et bien documentée. Elle gère toute la complexité de la communication avec l’API de Discord, vous permettant de vous concentrer sur les fonctionnalités de votre bot.
- Une grande communauté : Beaucoup de développeurs utilisent Python pour leurs bots. Si vous êtes bloqué, il est très facile de trouver de l’aide sur des forums comme Stack Overflow ou sur des serveurs Discord dédiés au développement.
Les prochaines étapes pour votre bot
Vous avez maintenant toutes les clés pour créer votre propre bot Discord en Python. Le processus se résume à quelques étapes simples : la création de l’application sur le portail Discord, la récupération du jeton, l’écriture du code avec `discord.py` et l’invitation sur votre serveur.
N’hésitez pas à consulter la documentation officielle de `discord.py` pour découvrir tous les événements et toutes les commandes disponibles. C’est le meilleur endroit pour trouver des informations précises et des exemples pour aller plus loin.
