DEV Community

Cover image for Get started with discord.py!
Tejas Kathuria
Tejas Kathuria

Posted on • Edited on

3 1

Get started with discord.py!

[](url)Discord.py is a very fantastic API. It helps us in creating Discord bots easily. People have made game bots, RPG bots, Moderation Bots, Economy bots, and even more! Using this guide, you can learn how to use it.

Install discord.py

Make sure you have python installed on your computer. You have to install discord.py with

pip install discord.py
Enter fullscreen mode Exit fullscreen mode

voilà! discord.py has been installed!

For making bots you'll need to have a developer account. You can check this guide!

Basics of developing a bot

When starting you have to choose weather to use discord.Client or commands.Bot.

discord.Client:
• Is more lightweight than commands.Bot
• Is best if you're not going to be using commands

commands.Bot:
• Is best if your bot is going to have commands
• Supports easy discord object conversion

In this series we will make a bot with commands.Bot.

We have to start by importing discord and discord.ext.commands

import discord
from discord.ext import commands

bot = commands.Bot(command_prefix="$")

bot.run('YOUR TOKEN HERE')
Enter fullscreen mode Exit fullscreen mode

We initialized a class as an object. We defined this class to the variable bot, which can be named whatever you want. Most people use bot or client.

Now when our bot is defined, we can start with our first command. In discord.py we make commands like this:

@bot.command(name='command_name', description="description for help command")
async def command(ctx, other_arguments_here):
   # Tell bot what to do here
Enter fullscreen mode Exit fullscreen mode

Let's make a command which will greet the user with a hello. We'll use ctx.author for doing this:

@bot.command(name='Hello', description="Greets the sender")
async def hello(ctx):
    await ctx.reply(f"Hello {ctx.author.name}!")
# f-string
Enter fullscreen mode Exit fullscreen mode

Now, when we greet the user, it will say Hello USER!

Congrats!! You've just written a bot using discord.py! Run the code. When you'll type $hello it should respond!
Image description
Source Code:

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (0)

Image of Datadog

Create and maintain end-to-end frontend tests

Learn best practices on creating frontend tests, testing on-premise apps, integrating tests into your CI/CD pipeline, and using Datadog’s testing tunnel.

Download The Guide

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay