- Saved searches
- Use saved searches to filter your results more quickly
- TOG6-6/discord-bot-commands
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- Создание простого Discord бота с помощью библиотеки discord.py
- Получение токена и Client ID для вашего бота
- Собственно пишем бота
- Заключение
- Создание Discord-бота на Python. Часть 1
- Создание бота и получение токена
- Написание кода
- Бонусный туториал!
- Конец
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Every Command You Would Ever Need For Your Discord.py Bot!
TOG6-6/discord-bot-commands
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
HERE’S A STEP TO STEP TUTORIAL ON HOW TO MAKE DISCORD BOTS WITH 0% KNOWLEDGE OF PYTHON OR DISCORD.PY!
NOTE: Please Be Patient, I’m Updating All Of This
If You Need Any Help, Please Feel Free To DM Me: FakeTOG#6666 It Would Greatly Support Me If You Joined The Coolest Discord Server Ever: https://discord.gg/bHt2Skqujk
ALSO, I’m always wanting to add more stuff to the bot, so feel free to tell me if you want me to add something, I’ll do it asap!
Ok, Let Me Explain. For This Bot, You don’t at all need any python experience, you just have to grab the necessary codes from each file into your main file!
For Example mainbotcode.py has the following code:
intents = discord.Intents.default() #default intents intents.all() #main code starts here! client = commands.Bot(command_prefix='$', intents=intents, case_insensitive=True, allowed_mentions=discord.AllowedMentions(everyone=False))#$ is your prefix #whatever code you want to add, do it after this line @client.event async def on_ready(): """This Event Gets Triggered When The Bot Successfully Connects To The Internet!""" print("The Bot Is Now Ready To Run!") #your code shouldn't cross this line! client.run(token)
You just have to add your code in between! You can get the necessary code from the py files in each folder just by copy pasting the codes!
I’m going to assume you have 0% python knowledge for this one! [1] First things first, go to https://python.org and install python!
[2] In the Python installer, make sure enable ADD PYTHON TO PATH or ADD PYTHON TO ENVIRONMENT VARIABLES ! [3] You now need a compiler or an editor! — I personally use Visual Studio Code (https://code.visualstudio.com) But feel free to use whatever you like!— Good options are Codeblocks, Visual Studio, Pycharm, Atom, Anaconda Navigator, Sublime Text etc!
[4] Now open cmd and type pip — it will show you pip info!— If it doesn’t contact me and I’ll be happy to help! — https://discord.gg/bHt2Skqujk
[5] Type in the following commands 1 by 1:pip install discord pip install discord.py[voice] pip install requests
[6] Now that you have the necessary libraries, just install these source codes to your computer so you can start editing! It’s something like how you try clothes in a store, but just that it’s free XD, unless you want to donate! Just open mainbotcode.py and keep it ready Thennnn open the folders and add the necessary codes!
FOR EXAMPLE: Taking Code From moderator commands/kick.py :
@client.command() @commands.has_permissions(kick_members=True) async def kick(ctx, member: discord.Member, *, reason=None): if member.guild_permissions.kick_members: embed = discord.Embed(title="", description=f" He's A Protected User") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) else: if member == ctx.author: embed = discord.Embed(title="", description=f" It's Not Wise To Kick Your Self") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) else: try: await member.kick(reason=reason) embed = discord.Embed(title="", description=f"`#` Was Kicked From `` By With Reason: `` Successfully!") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) except: embed = discord.Embed(title="", description=f" You Don't Have Permission To Do This!") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed)
intents = discord.Intents.default() #default intents intents.all() #main code starts here! client = commands.Bot(command_prefix='$', intents=intents, case_insensitive=True, allowed_mentions=discord.AllowedMentions(everyone=False))#$ is your prefix #whatever code you want to add, do it after this line @client.event async def on_ready(): """This Event Gets Triggered When The Bot Successfully Connects To The Internet!""" print("The Bot Is Now Ready To Run!") @client.command() @commands.has_permissions(kick_members=True) async def kick(ctx, member: discord.Member, *, reason=None): if member.guild_permissions.kick_members: embed = discord.Embed(title="", description=f" He's A Protected User") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) else: if member == ctx.author: embed = discord.Embed(title="", description=f" It's Not Wise To Kick Your Self") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) else: try: await member.kick(reason=reason) embed = discord.Embed(title="", description=f"`#` Was Kicked From `` By With Reason: `` Successfully!") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) except: embed = discord.Embed(title="", description=f" You Don't Have Permission To Do This!") embed.set_author(name="Fake TOG") embed.set_footer(text=f"Requested By: #", icon_url=ctx.author.avatar_url) await ctx.send(embed=embed) #your code shouldn't cross this line! client.run(token)
NECESSARY IMPORTS YOU MAY WANNA ADD:
#discord imports #pip install discord & pip install discord.py[voice] import discord import discord.ext.commands from discord.ext.commands import bot from discord import Game from discord.ext import commands from discord.ext.commands import CommandNotFound from discord.ext.commands import errors import discord.utils from discord.utils import find, get import asyncio #pip install asyncio import aiohttp #pip install aiohttp #some imports you can add if you want import platform #pip install platform import os import random import string import requests #pip install requests import math import binascii import subprocess import json import sys import urllib, urllib3 #pip install urllib #feel free to add more
That’s all! — NO PYTHON KNOWLEDGE REQUIRED XD! — THIS SHOULD LITERALLY TAKE YOU 15 Minutes!
Создание простого Discord бота с помощью библиотеки discord.py
Асинхронная библиотека discord.py содержит все что нужно для бота, с помощью нее даже можно работать с голосовыми каналами сервера. В этой статье я расскажу как создать простенького бота для вашего discord сервера.
Получение токена и Client ID для вашего бота
Для получения токена и ID бота небходимо создать свое приложение и в разделе General Information скопировать Client ID.
А в разделе настроек создать бота и скопировать его токен. Задача не сложная, думаю все с этим справятся.
Собственно пишем бота
Устанавливаем discord.py с помощью pip:
После успешной установки создаем файл bot.py, где будем писать бота.
Импортируем все необходимое:
import discord from discord.ext import commands
Создаем переменную с вашим токеном, про который я писал выше:
Хотя еще рано, но если вы захотите залить вашего бота на какой-нибудь сервер, то стоить побеспокоится о безопасности вашего токена.
bot = commands.Bot(command_prefix='!') #инициализируем бота с префиксом '!'
Для начала сделаем простенькую команду, аргумент которой бот будет просто пересылать:
@bot.command(pass_context=True) #разрешаем передавать агрументы async def test(ctx, arg): #создаем асинхронную фунцию бота await ctx.send(arg) #отправляем обратно аргумент
И в конце запускаем бота с вашим токеном:
В итоге должно получится вот такое:
import discord from discord.ext import commands TOKEN = 'Ваш токен' bot = commands.Bot(command_prefix='!') @bot.command(pass_context=True) # разрешаем передавать агрументы async def test(ctx, arg): # создаем асинхронную фунцию бота await ctx.send(arg) # отправляем обратно аргумент bot.run(TOKEN)
Теперь необходимо добавить бота на сервер. Сделать это можно с помощью ссылки:
https://discordapp.com/oauth2/authorize?&client_id=&scope=bot&permissions=
Число необходимых прав можно получить в разделе настроек бота.
Теперь можно запускать бота:
После нескольких секунд, можно заметить его в сети:
И наконец-то попробовать отправить команду:
Заключение
Вот так можно легко запустить у себя на сервере бота. Как можно заметить библиотека делает практически все за тебя и остается только добавлять свой функционал с использованием python. В следующий раз я покажу как следить за событиями, подключатся к голосовым каналам (избегая проблем с linux и Windows), использовать роли и права участников и другое.
Надеюсь, статья была Вам полезна, удачи!
Создание Discord-бота на Python. Часть 1
Приветствую, хабровчане и другие пользователи интернета. Сегодня я начну цикл статей, посвящённых созданию Discord-бота с помощью библиотеки discord.py. Мы рассмотрим создание как и примитивного бота, как и «продвинутого» бота с модулями. В этой статье мы сделаем стандартную команду и ещё одну небольшую команду. Начнём!
Создание бота и получение токена
Для того, чтобы добавить бота на сервер нужно создать свое приложение и во вкладке General Information скопировать Client ID.
Здесь заменяем CLID на ранее скопированный Client ID.
https://discordapp.com/oauth2/authorize?&client_id=CLID&scope=bot&permissions=8
Во вкладке Bot создаём бота и копируем токен.
Написание кода
Устанавливаем саму библиотеку.
Создаём файл config.py (так удобнее), и создаём там словарь.
Создаём main-файл, название может быть любое.
Импортируем библиотеки и наш файл конфига:
import discord from discord.ext import commands from config import settings
Создаём «тело» бота, название может быть любое:
bot = commands.Bot(command_prefix = settings['prefix']) # Так как мы указали префикс в settings, обращаемся к словарю с ключом prefix.
Начинаем писать основной код.
@bot.command() # Не передаём аргумент pass_context, так как он был нужен в старых версиях. async def hello(ctx): # Создаём функцию и передаём аргумент ctx. author = ctx.message.author # Объявляем переменную author и записываем туда информацию об авторе. await ctx.send(f'Hello, !') # Выводим сообщение с упоминанием автора, обращаясь к переменной author.
В конце запускаем бота с помощью:
bot.run(settings['token']) # Обращаемся к словарю settings с ключом token, для получения токена
import discord from discord.ext import commands from config import settings bot = commands.Bot(command_prefix = settings['prefix']) @bot.command() # Не передаём аргумент pass_context, так как он был нужен в старых версиях. async def hello(ctx): # Создаём функцию и передаём аргумент ctx. author = ctx.message.author # Объявляем переменную author и записываем туда информацию об авторе. await ctx.send(f'Hello, !') # Выводим сообщение с упоминанием автора, обращаясь к переменной author. bot.run(settings['token']) # Обращаемся к словарю settings с ключом token, для получения токена
Бонусный туториал!
Сделаем вывод случайных картинок с лисами
Для этого импортируем еще пару библиотек:
import json import requests
Приступим к написанию команды.
@bot.command() async def fox(ctx): response = requests.get('https://some-random-api.ml/img/fox') # Get-запрос json_data = json.loads(response.text) # Извлекаем JSON embed = discord.Embed(color = 0xff9900, title = 'Random Fox') # Создание Embed'a embed.set_image(url = json_data['link']) # Устанавливаем картинку Embed'a await ctx.send(embed = embed) # Отправляем Embed
Конец
На этом 1 часть закончена. Скоро будет опубликована 2 часть.