Как написать бота в дискорд на питоне

Чтобы сделать экономического бота, нужно создать этого бота. Здесь мы не будем об этом писать, но если вы новичок и не знаете, то вот ссылка на статью как это сделать.

После того, как мы добавили его на сервер. То пишем такой код:

import discord from discord.ext import commands from discord.utils import get intents = discord.Intents.all() intents.message_content = True bot = commands.Bot(command_prefix=»!», intents=intents) bot.run(«[token]»)

Вместо «!» можно поставить другой префикс. Это символ, на который будет начинаться любая команда бота. И вместо [token] вставьте туда свой токен своего бота. Запустите бота и проверьте, нет ли ошибок.

Если он появился в сети, то значит все работает.

Первое, что можно сделать. Это то, чтобы можно было посмотреть свой баланс, то-есть, посмотреть сколько у вас монет. Для этого, создаем файл wallets.json. В нем будут все данные о нас или о другого участника на сервере. В этот файл нужно только написать <>.

КАК СОЗДАТЬ СВОЕГО ДИСКОРД БОТА НА PYTHON

Далее создаем еще один файл stats.py. И пишем туда этот код:

import json WALLET_DEFAULT = async def get_user_wallet(user_id): user_id = str(user_id) with open(«wallets.json», «r», encoding=»UTF-8″) as file: users_wallets = json.load(file) if user_id not in users_wallets.keys(): users_wallets[user_id] = WALLET_DEFAULT with open(«wallets.json», «w», encoding=»UTF-8″) as file: json.dump(users_wallets, file) return users_wallets[user_id] async def set_user_wallet(user_id, parameter, new_value): user_id = str(user_id) with open(«wallets.json», «r», encoding=»UTF-8″) as file: users_wallets = json.load(file) if user_id not in users_wallets.keys(): users_wallets[user_id] = WALLET_DEFAULT users_wallets[user_id][parameter] = new_value with open(«wallets.json», «w», encoding=»UTF-8″) as file: json.dump(users_wallets, file)

Этот код можно просто скопировать. Функция get_user_wallet возвращает нам данные о участнике сервера. Если участника нету в файле wallets.json, то он туда записывается. Функция set_user_wallet изменяет значение его баланса.

Также нужно этот файл импортировать в нашем главном файле. Поэтому пишем этот код в наш первоначальный файл.

import discord from discord.ext import commands from discord.utils import get from stats import * intents = discord.Intents.all() intents.message_content = True bot = commands.Bot(command_prefix=»!», intents=intents) bot.run(«[token]»)

Давайте сделаем первую команду, с помощью которого, можно будет посмотреть свой или баланс другого участника. Данный код копируем и вставляем в первоначальный файл.

Здесь в функции balance программа проверяет, написали ли мы в user_mention кого-то упоминание. Если да, то находим этого участника по его упоминанию. Если нет, то просто берем за участника того, кто написал команду. Дальше мы по ID участника, получаем его данные. Его баланс и инвентарь.

После наш бот пишет в чат что у кого-то есть сколько-то денег. То-есть пишет его баланс.

Теперь мы можем добавить команду, чтобы мы могли задать, добавить или отнять у баланса участника деньги. Для этого пишем этот код в наш главный первоначальный файл.

Команда set_money задает количество монет в балансе участника сервера. Команда add_money добавляет монеты к балансу, а команда remove_money убирает у баланса монеты. Все эти команды можно использовать, только если у вас есть права Администратора.

Также, давайте сделаем чтобы можно было зарабатывать эти монеты. И зарабатывать их каждую минуту. Для этого мы напишем такую функцию.

Только перед тем как написать эту функцию, импортируйте модуль random.

import random

Таким образом прописав команду earn можно заработать от 60к до 100к монет.

И конечно же команда чтобы давать друг-другу деньги.

Источник: h.amazingsoftworks.com

Discord bot on python: part 1

Рассмотрим как написать дискорд бота на питоне, с чего начать и как вообще всё это работает))).
Для того чтобы всё получилось у вас должна быть учётная запись в дискорде с подтверждённым e-mail, учётная запись на replit.com (но не обязательно, просто я привык писать код именно в этом облачном IDE), чуточку упорства и ,конечно же, хорошее настроение. Готовы? Тогда поехали!

Еще по теме:  Как включить невидимку дискорд

Step 0

Зайдите на сайт discord.com и найдите там раздел разработчикам. Обычно он находится в «подвале» сайта.

Вас перекинет на подобную страницу. Выберите раздел Applications. В этот момент вас попросят авторизоваться. Пройдите авторизацию если вы этого не сделали ранее.

Замечание: Если после авторизации у вас открылся Discord в браузере, просто вернитесь на пару страниц назад и опять выберите раздел Applications.

Здесь вы увидите:
1 — Вашу аватарку
2 — Уже созданные приложения
3 — Кнопку для создания нового приложения. Именно на неё и жмём для создания приложения через которое будет работать наш бот.

У вас появится окно, в которое необходимо вписать название вашего приложения. Жмём Create.

Перейдите в раздел Bot и добавьте бота Add Bot. В появившемся окне нажимаем Yes, do it! Должно появиться подобное окно, как ниже.

Пролистайте страницу в самый низ и дайте боту права администратора. ВАЖНО! Выдавайте права администратора только на стадии разработки. После того как вы напишете бота, снимите данную галочку и укажите только необходимые для корректной работы бота права.

Почти готово!

Теперь необходимо создать сервер на котором будет работать ваш бот. Для этого откройте приложение discord и нажмите на кнопку добавить сервер

В появившихся окнах выбирайте следующие пункты.

  • Теперь переходим в браузер и переключаемся на вкладку OAuth2. Ставим галочку напротив пункта Bot, ниже в окне должна появиться ссылка, которую необходимо скопировать и вставить в новой вкладке браузера.

    В появившемся окне вам будет предложено выбрать сервер на котором будет работать ваш бот. Выбирайте сервер который мы создали ранее и переходите в приложение discord. Вы увидите в правой части вашего бота. Пока что он не в сети. Необходимо написать код для него и запустить на выполнение чтобы он заработал.

  • Step 1

    Настало время покодить. Заходите на репл и создавайте новый. Я назову свой «Test super discord».
    В первых строчках импортируем необходимые библиотеки. Далее создадим объект класса Bot. Именно этому объекту мы будем прописывать все дальнейшие команды. command_prefix — символ, который необходимо написать в сообщении, чтобы бот воспринимал текст сообщения как команду. Методом run() запускаем бота, передав в качестве параметра токен.

    Для того чтобы получить токен. В браузере в окне приложения discord перейдите в раздел Bot и нажмите на кнопку Copy. Вставьте токен в переменную TOKEN (тип данных — строка).

    Если вы сейчас запустите бота, он появится в сети на сервере, но пока что он ничего не умеет. Давай напишем нашу первую обработку команды. Например, чтобы на сообщение /hello , бот отвечал бы Hello, world!

    Размещайте код команд до строчки bot.run(TOKEN). Отправьте сообщение ‘/hello’ на сервер, бот вам ответит. Обратите внимание, имя функции полностью соответствует тексту команды, которую мы хотим запрограммировать. Таким образом можно описать сколько угодно команд и их алгоритмы.

    Теперь напишем команду add которая будет складывать два числа и отправлять в сообщении сумму этих чисел.

    при отправке команды /add через пробел напишите два числа и бот пришлёт вам сумму этих чисел.

    В следующей статье мы рассмотрим декораторы событий в discorde. Научимся перехватывать событие запуска бота и событие отправки пользователем сообщения. Абсолютно любого сообщения, а не только команд.

    Еще по теме:  Дискорд нагружает процессор что делать

    Источник: koddom.com

    Как написать бота в дискорд на питоне

    Как сделать Дискорд бота на Python и добавить его на сервер?

    После выхода на канале ролика про базовые основы программирования на Python вы часто спрашиваете, на чём ещё можно практиковаться в свободное время, помимо написания различных скриптов с упором в ИБ. Как по мне, если вы пока не работаете непосредственно в этой сфере, а просто на досуге занимаетесь самостоятельным освоением языка – наилучшей практикой на начальном этапе, будет написание ботов. Да, разумеется, боты не являются чем-то новым и уникальным. С самого начала популяризации интернета боты применялись и применяются до сих пор во всевозможных мессенджерах, играх и в соц. сетях.

    Боты для Дискорда, о которых мы с вами сегодня поговорим, как и все остальные боты, представляют собой небольшие программки, которые имитируют не сложные действия человека в какой-либо экосистеме.

    Например, они могут довольно сносно общаться с другими людьми, играть с ними в игры, автоматически искать информацию, выполнять всевозможные рутинные задачи и многое другое.

    Для того, чтобы запустить по уму Discord-бота, нам понадобится высокоскоростная виртуальная машина на внешнем сервере. Я буду использовать вариант с VDS от моих друзей из SprintBox.

    SprintBox специализируется на предоставлении мощных VDS-серверов. Настроить их можно по своему усмотрению.

    Хотите – ставьте готовый популярный дистрибутив выбрав его инсталляшку из вариантов в панели управления сервиса. Любите полный контроль? Пожалуйста. Загружаейте собственную операционную систему вручную.

    Можно установить сервер в игре майнкрафт, задеплоить любые типы ботов. Для VK, Телеги и, разумеется, Discord’а. Куда ж без него. Но прежде, чем начинать творить весь интересный движ, нужно сначала пройти регистрацию на офф сайте.

    Вводим на главной странице электронную почту, желаемый пароль для входа, и кликаем на большущую кнопку «Зарегистрироваться».

    kak sdelat discord bota na phyton 01

    Перед нами сразу открывается панель управления с вариантами выбора для установки дистрибутива.

    kak sdelat discord bota na phyton 02

    В меню слева можно подключиться к партнёрской программе, активировать фаервол, врубить защиту от внешних DDoS-атак, прикупить доменное имя и конечно же сделать бэкап существующих боксов.

    kak sdelat discord bota na phyton 03

    Давайте создадим новый бокс и инсталлируем на него образ Ubuntu.

    kak sdelat discord bota na phyton 04

    Выбираем из списка тариф. Тут кстати есть небольшой нюанс. Несмотря на то, что оплата указывается за месяц, запустить бокс вы сможете даже если на вашем счету будет всего 100 рублей. А если ещё заюзаете мой промокод, то получите 50% кэшбек при первом пополнении счёта.

    kak sdelat discord bota na phyton 05

    После успешного пополнения, можно запустить созданный бокс через клиент VNC.

    kak sdelat discord bota na phyton 06

    Подготовка окружения

    Логинимся под пользователем Root используя те данные, которые пришли нам в письме на указанный при регистрации ящик и обновляем пакеты системы до самой последней версии.

    После того, как процесс завершится – устанавливаем менеджер пакетов PIP. Он нам понадобится для загрузки библиотек.

    Чтобы иметь возможность устанавливать разные модули разным проектам накатив virtualenv.

    Затем добавим виртуальное окружение в системные пути:

    И наконец создадим само окружение. Здесь python — произвольное имя нового окружения, а ключ —system-site-packages задействует модули, уже установленные в системе.

    Активируем эту историю. И сразу ставим библиотеку Discord.

    Далее добавляем директорию для бота, не выходя из виртуального окружения:

    И создаем конфиг.

    (python) [email protected] :~$ vim discobot/config.py

    ‘ token ‘: ‘ ODQ 2 MzkxFDQ 2 OTI 5 Dzc 2 Njc 1. YKu 1 Fg . OqAK 4 hPGz 6 NzXaF 6 lsXWYRssstk ‘,

    ‘ bot ‘: ‘ My Awesome Bot ‘,

    На этом этапе нам понадобятся данные с сайта месседжера. Заходим на https://discord.com/ и авторизовавшись создаём приложение. Для этого захоим в раздел «Разработчикам», «Applications» и нажимаем на кнопку «New Application».

    Еще по теме:  Как присоединиться к дискорд серверу без ссылки

    kak sdelat discord bota na phyton 07

    Выбираем имя для приложения.

    kak sdelat discord bota na phyton 08

    По желанию можно задать описание и загрузить аватарку.

    kak sdelat discord bota na phyton 09

    Теперь добавим к приложению бота. В меню слева вкладка «Bot», «Add Bot», «Yes, do it!». Для получения токена бота кликаем по кнопке Copy.

    kak sdelat discord bota na phyton 10

    Добавление бота на сервер

    Далее, для добавления бота на сервере переходим на вкладку «OAuth2» и создаем для него свой URL.

    kak sdelat discord bota na phyton 11

    Затем указываем права для бота. Если это бот для администрирования сервера, то можно, конечно, выбрать «Administrator», но лучше не наделять машину столь высокими полномочиями. Выдаем права, действительно нужные боту для администрирования сервера.

    Теперь бота можно добавить на сервер. Копируем ссылку, и открываем её в браузере. В диалоговом окне выбираем наш сервер.

    kak sdelat discord bota na phyton 13

    Проверяем его привилегии.

    kak sdelat discord bota na phyton 14

    Собственно, на этом этапе всё. Бот на сервере.

    kak sdelat discord bota na phyton 15

    Давайте вернёмся к редактированию конфига в Phyton. В строчку Токен, как вы уже догадались вносится ранее скопированный в дискорде набор символов, имя, ID из раздела «General Information», и префикс с символом на который бот будет реагировать, как на начало команды.

    ‘ token ‘: ‘ ODQ 2 MzkxFDQ 2 OTI 5 Dzc 2 Njc 1. YKu 1 Fg . OqAK 4 hPGz 6 NzXaF 6 lsXWYRssstk ‘,

    ‘bot’: ‘My Awesome Bot’,

    Далее давайте напишем код для нашего бота. Создаем bot.py и сразу отредактируем его через Vim:

    (python) [email protected]:~$ vim discobot/bot.py

    Активируем виртуальное окружение и импортируем нужные модули.

    import os, sys
    activate_this = ‘/home/bot/python/bin/activate_this.py’
    with open(activate_this) as f:
    exec(f.read(), )
    import discord

    from discord.ext import commands
    from config import settings

    Затем обозначим боту, с какого символа будут начинаться его команды.

    bot = commands.Bot(command_prefix = settings[‘prefix’])

    И создадим первую команду — бот будет отправлять ответ с текстом “Working” на сообщение “!status”.

    async def status(ctx):
    await ctx.reply(‘Working’)

    Добавляем в код функцию запуска.

    bot.run(settings[‘token’])

    Закроем редактор и запустим наш бот.

    (python) [email protected]:~$ python discobot/bot.py

    Пробуем отправить тестовое сообщение в Discord. Гуд. Всё работает.

    kak sdelat discord bota na phyton 16

    Фишка для бота Discord

    Теперь давайте добавим несколько крутых фишек. Например, прикрутим к боту какое-нибудь рандомное API. Открываем файл бота:

    [email protected]:~$ vim ~/discobot/config.py

    И добавляем в него пару библиотек и функцию обработки команд:

    import json
    import requests
    async def meme(ctx):
    json_data = response.json()
    embed = discord.Embed(title = json_data[‘caption’])
    embed.set_image(url = json_data [‘image’])

    await ctx.send(embed = embed)

    Закрываем файл и перезапускаем бота, чтобы изменения вступили в силу:

    [email protected]:~# systemctl restart mlg

    В результате бот сможет генерировать рандомные мемы.

    kak sdelat discord bota na phyton 17

    И это только цветочки. Боты в Discord умеют многое, и простор для творчества ограничивается исключительно рамками вашей фантазии. Для воплощения задумок можно изучать, как техническую документацию, так и специализированные базы знаний с техническими статьями по соответствующей тематике.

    Так у SprintBox данная база с такими статьями предоставлена прямо на сайте. Один из таких материалов, как раз и лёг в основу нашего сегодняшнего сюжета. Так что настоятельно рекомендую ознакомиться, если интересно саморазвитие в бото-строении.

    Ну а у меня на сегодня всё. Не забудьте поставить лайк и написать комментарий интересна ли вам в целом тема создания ботов. Что вы хотите увидеть в дальнейших уроках по Python и на каком уровне в его освоении вы находитесь в данный момент.

    С вами, как обычно, был Денчик. В заключении по традиции хочу пожелать всем досмотревшим до этой минуты удачи, успеха и самое главное, отличного настроения. До новых встреч, мои кайфные друже. Всем пока.

    Источник: kurets.ru

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...