Что такое токен и почему он устарел, как его получить и войти в Дискорд

Python * Из песочницы Асинхронная библиотека discord.py содержит все что нужно для бота, с помощью нее даже можно работать с голосовыми каналами сервера. В этой статье я расскажу как создать простенького бота для вашего discord сервера. image

Получение токена и Client ID для вашего бота

Для получения токена и ID бота небходимо создать свое приложение и в разделе General Information скопировать Client ID. image А в разделе настроек создать бота и скопировать его токен. Задача не сложная, думаю все с этим справятся.

Собственно пишем бота

Устанавливаем discord.py с помощью pip:

pip install discord

После успешной установки создаем файл bot.py, где будем писать бота. Импортируем все необходимое:

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)

В итоге должно получится вот такое: Код

 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={Client ID}&scope=bot&permissions={Права, например 66395456}

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

python bot.py

После нескольких секунд, можно заметить его в сети: И наконец-то попробовать отправить команду:

Заключение

Вот так можно легко запустить у себя на сервере бота. Как можно заметить библиотека делает практически все за тебя и остается только добавлять свой функционал с использованием python. В следующий раз я покажу как следить за событиями, подключатся к голосовым каналам (избегая проблем с linux и Windows), использовать роли и права участников и другое. Надеюсь, статья была Вам полезна, удачи!

Вы пытаетесь найти свой токен Discord? К счастью, его очень легко получить — все, что вам нужно, это веб-браузер. Имейте в виду, что есть только несколько законных причин, чтобы найти ваш токен Discord, и вы ни при каких обстоятельствах не должны передавать его другим.

Читайте дальше, чтобы узнать, для чего используется токен Discord и как вы можете получить свой. Давайте начнем!

Что такое токен Discord?

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

Программы для Windows, мобильные приложения, игры – ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале – Подписывайтесь:)

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

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

Как найти свой токен Discord?

Если вам нужен токен Discord, единственный способ найти его — через Инструменты разработчика Discord. Чтобы найти токен Discord:

  1. Откройте веб-браузер и перейдите на официальный сайт Discord.
  2. Войдите в свою учетную запись.
  1. После загрузки страницы нажмите Ctrl + Shift + I, чтобы открыть консоль Discord.
  2. Перейдите на вкладку «Сеть» и нажмите F5, чтобы перезагрузить страницу.
  1. Введите /api в поле поиска фильтра.
  1. Выберите вкладку «Заголовки», а затем выберите discord.com из списка слева.
  1. На вкладке «Заголовки» прокрутите вниз, чтобы найти строку с надписью «Авторизация».
  1. Это значение является вашим токеном Discord — держите его в секрете.

Что такое токен бота Discord?

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

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

Чтобы получить токен бота Discord, вам сначала нужно создать бота:

  1. Направляйтесь к Портал разработчиков Discord.
  2. Нажмите «Новое приложение» и назовите своего бота.
  1. Выберите Создать.
  1. Выберите вкладку «Бот» в меню слева.
  1. Выберите Добавить бота.
  1. Нажмите Да, сделайте это!
  1. После того, как вы создали бота, вы можете легко найти его токен: на странице бота вы увидите панель, показывающую только что созданного бота. Под именем пользователя должен быть синий текст с надписью Click to Reveal Token. Выберите это, чтобы найти токен Discord вашего бота.

Что делать, если ваш токен Discord скомпрометирован?

Мошенники часто пытаются собрать токены Discord (и токены ботов) людей, чтобы украсть серверы, ботов и учетные записи. Затем они используют их для спама серверов и других пользователей. Часто спам пытается распространить вредоносное ПО, предназначенное для кражи учетных данных пользователей и личной информации.

Если вы считаете, что кто-то получил доступ к вашему токену Discord, вам следует действовать немедленно. Есть две вещи, которые сбросят ваш токен и вернут вам единоличный контроль над вашей учетной записью: изменение пароля Discord и включение двухфакторной авторизации (2FA).

Чтобы изменить пароль и включить 2FA:

  1. Откройте приложение Discord или перейдите на Раздор через ваш веб-браузер.
  2. Рядом со своим именем выберите значок шестеренки, чтобы открыть настройки.
  1. Выберите Моя учетная запись.
  1. Прокрутите вниз, выберите «Изменить пароль» и введите безопасный пароль.
  1. Нажмите Готово.
  2. Далее выберите «Включить двухфакторную аутентификацию».
  1. Введите свой пароль и выберите Продолжить.
  1. Следуйте инструкциям, чтобы загрузить и установить приложение аутентификатора 2FA.

Не отдавайте свой токен Discord

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

Программы для Windows, мобильные приложения, игры – ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале – Подписывайтесь:)

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

Итак, если вас заинтересовала тема работы с токенами, то, скорее всего, вам:

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

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

Токен – это своеобразный идентификационный ключ, позволяющий авторизоваться или подключиться к какому-то аккаунту. В отличие от логинов и паролей, токен – это одна большая генерируемая строка, а не две пользовательские.

Еще одна отличительная особенность token-ов в том, что их срок действия и права доступа легко настраивать, да и они одноразовые (не всегда). Например, планируется выдать доступ только к имени аккаунта и только на 24 часа, выставляете эти настройки в параметрах, и вуаля: token с пользовательскими настройками готов.

Впрочем, описание выше относится к самому термину «токен». В Дискорде термин «token» означает своеобразный ключ аутентификации, который позволяет обращаться к созданному боту (при его разработке) либо проходить авторизацию в сторонних сервисах. Существуют даже token grabber-ы, которые позволяют считать данные с аккаунта.

И еще, даже если данные попадут в какую-то пиратскую базу, то их можно отозвать или сбросить. В общем, преимущество токенов в их компактности и безопасности.

Итак, чтобы получить token для бота, необходимо сначала создать этого бота. Для этого вам понадобится владеть навыками программирования. Впрочем, опустим пункт с разработкой. Вот, у вас есть готовый бот, который осталось подключить к Дискорду с помощью token-а. Для этого выполняем следующие действия:

  • Откройте сайт Дискорда для разработчиков. Он находится по этой ссылке https://discord.com/developers/applications
  • Нажмите кнопку «New Application».
  • Выберите название нового приложения.
  • Заполните нужные данные для бота. Там нужно указать его описание, а также статус. Однако, все это опционально.
  • Перейдите в раздел «Bot».
  • Найдите заголовок поля «Token». Под ним будет ссылка «Click to Reveal token». Нажмите на нее.
  • Вместо ссылки отобразится длинный текст, состоящий из символов и цифр.

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

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

  • Откройте главную страницу Дискорда в браузере. Через устанавливаемую версию ничего сделать не получится.
  • Нажмите кнопку «F12» (или «Ctrl» + «Shift» + «I»). Должны открыться инструменты разработчика.
  • Перейдите в раздел «Сеть» («Network»).
  • Введите в окно поиска фразу «/api/v9».
  • Откройте любой найденный файл.
  • Перейдите в раздел «Заголовки» («Headers»). По умолчанию там выбран «Предварительный просмотр», если вы сидите с Google chrome.
  • Прокрутите его до строки «Authorization». После нее будет указан ваш токен.
  • Скопируйте его.

Готово. Теперь вы можете указать его в нужном поле для авторизации. Учтите, что токен равносилен данным авторизации, а потому его не стоит оставлять на виду у всех.

Итак, зайти напрямую через токен не получится. Он не отправляется GET-запросом, а значит, просто скопировать текст в строку URL нельзя. Однако не стоит разочаровываться и возмущаться, зачем эти инструкции выше. Token часто используется сторонними сервисами для авторизации.

При необходимости вы можете скопировать идентификационный текст именно туда. Но учтите, токен привязан к одной сессии в Дискорде. То есть, если пользователь нажмет кнопку «Выйти», token автоматически станет недействительным.

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

Запомните, все token-ы ваших ботов и аккаунтов получаются бесплатным путем и без посредников. Не стоит верить этим банальным схемам мошенников.

Вы строго следовали инструкциям выше и, кажется, все получилось, авторизация через Дискорд прошла успешно, бот подключен и все вроде бы идеально. Однако через время вдруг эта инструкция уже не работает, а вместо желанного результата появляется ошибка «Токен устарел». Что же делать в таком случае?

Как мы уже говорили выше, эти секретные token-ы легко отозвать. Чтобы сделать это с ботом, достаточно зайти в панель управления приложением, в раздел «Bot» и нажать «Regenerate», а после скопировать новые данные. Готово, осталось закинуть новые данные в код с ботом и радоваться результату.

Чтобы сбросить token для аккаунта, достаточно выйти из профиля на сайте, где производилось копирование token. После авторизуйтесь снова, повторите алгоритм из раздела «Как узнать Дискорд-токен для аутентификации». Новые данные запишите в надежное место, а после скопируйте в настройки сервиса, где появилась ошибка. Как вы уже поняли, устаревший token – это некритичная ошибка, а лишь мера безопасности, спасающая от тех самых мошенников, которые продают аккаунты.

Надеемся, что эти способы помогли вам. Если остались вопросы, то смело задавайте их в комментариях. Благодарим за прочтение.

24.11.2021 20:44 484 Евгений Верещака Информационный портал IT Техник

Всем привет, сегодня мы напишем Discord-бота на Python и discord.py + бонусом посмотрим на примеры ботов. Приступим 🙂

Перед работой

Перед тем, как начать, вам нужны:

  1. Python 3;
  2. discord.py;
  3. Discord-аккаунт и свой сервер.

Для установки discord.py воспользуйтесь пакетным менеджером:

pip3 install discord.py

Создаём нашего бота

Перейдите на Developer Portal и нажмите на New application.

Вы создали своё приложение, на странице приложение перейдите в Bot >> Add Bot и создайте своего Discord-бота.

Сохраните токен бота! Дальше он нам понадобится!

Если всё прошло успешно, поздравляю, половина дела сделана 😀

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

Теперь можно добавить бота на сервер.

Перейдите в OAuth2 >> URL Generator, в Scopes выбираем Bot и ниже — права бота, копируем сгенерированный URL. Вставляем в браузер, и добавляем на наш сервер.

Эхо-бот

Напишем традиционного эхо-бота, и разберём каждую строчку кода.

Код:

import discord  from discord.ext import commands    config = {      'token': 'your-token',      'prefix': 'prefix',  }    bot = commands.Bot(command_prefix=config['prefix'])    @bot.event  async def on_message(ctx):      if ctx.author != bot.user:          await ctx.reply(ctx.content)    bot.run(config['token'])

Пример работы:

Разбор:

import discord  from discord.ext import commands

Нужные нам импорты.

config = {      'token': 'your-token',      'prefix': 'prefix',  }

Вспомогательный словарь config в котором храним токен и префикс команд (далее расскажу зачем нужен префикс команд).

bot = commands.Bot(command_prefix=config['prefix'])

Создаём нашего бота, в аргументе передаём префикс.

@bot.event

Декоратор, предназначенный для обработки событий, подробнее здесь.

async def on_message(ctx):

Создаём асинхронную функцию, с параметром ctx, представляет из себя сообщение.

if ctx.author != bot.user:

Проверка, не является ли автор сообщения нашим Discord-ботом. Дело в том, что если бот отправит сообщение, это будет новым событием, и тогда получается цикл.

await ctx.reply(ctx.content)

Отвечаем на сообщение (ctx.reply), в аргументы передаём сообщение (ctx.content).

bot.run(config['token'])

Запускаем нашего бота, в аргументы передаём токен бота.

Старший разработчик в команду IaaS (Cloud) tproger.ru Вакансии на tproger.ru

Надеюсь вы разобрались с кодом, и мы можем переходить далее.

Обработка команд

Перед тем, как обрабатывать команды, нам пригодится наш префикс.

Рассмотрим код:

import random  import discord  from discord.ext import commands    config = {      'token': 'your-token',      'prefix': '$',  }    bot = commands.Bot(command_prefix=config['prefix'])    @bot.command()  async def rand(ctx, *arg):      await ctx.reply(random.randint(0, 100))    bot.run(config['token'])

Результат работы:

Разбор:

@bot.command()

Декоратор обработки команд

async def rand(ctx, *arg):

Асинхронная функция rand

await ctx.reply(random.randint(0, 100))

Отвечаем на сообщение, в аргументы передаём случайное число от 0 до 100

Бонус

Проверка роли:

import random  import discord  from discord.ext import commands    config = {      'token': 'your-token',      'prefix': '$',  }    bot = commands.Bot(command_prefix=config['prefix'])    @bot.command()  @commands.has_role("Хозяин")  async def rand(ctx, *arg):      await ctx.reply(random.randint(0, 100))    bot.run(config['token'])

Выгнать пользователя

import discord  from discord.ext import commands    config = {      'token': 'your-token',      'prefix': '$',  }    bot = commands.Bot(command_prefix=config['prefix'])    @bot.command()  async def kick(ctx, user : discord.User(), *arg, reason='Причина не указана'):      await bot.kick(user)      await ctx.send('Пользователь {user.name} был изгнан по причине "{reason}"')    bot.run(config['token'])

21 мая в 2020 55K image

В этом ознакомительном HOWTO я расскажу, как можно немного занять себя на время карантина и сделать бота для своего Discord-сервера. Мы развернем NodeJS в Docker под Ubuntu 18.04 и запустим в нем бота с парочкой простых команд. В конце я оставлю ссылки на полезные источники информации, чтобы вы могли дальше развивать бота, наделяя его полезными функциями.

Программное обеспечение сервера, используемое в этом уроке:

  • Ubuntu 18.04
  • Docker 19.03.6
  • npm 6.14.5 

В этой статье подразумевается, что вы обладаете навыками работы в командной строке Linux.

Первые шаги

Первым шагом станет создание приложения на официальном сайте Discord (убедитесь, что вы зарегистрированы). Для этого потребуется пройти по ссылке и нажать на кнопку “New application”.

imageВ появившемся окне нужно придумать имя своему приложению (будущему боту):

image

После указания имени и создания приложения мы можем перейти к созданию бота. Для этого в левом меню выберите пункт “Bot” и нажмите на кнопку “Add Bot”.

imageПоследним шагом здесь будет копирование token по кнопке “Copy”. Держите в секрете ваш token и сохраните его куда-нибудь — он понадобится позже. 

image

Комьюнити теперь в Телеграм Подпишитесь и будьте в курсе последних IT-новостей

Подготовка сервера

В качестве площадки для размещения бота я использую VDS под управлением операционной системы Ubuntu 18.04. Вы можете разместить бота и на других дистрибутивах, убедившись в том, что в них установлены нужные пакеты.

Команды для установки в Ubuntu 18.04:

  sudo apt update  sudo apt install docker npm

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

Читайте также

Настройка Iptables для чайников image
Как установить и настроить NTP на сервере image

Создание основных файлов

Как я указал в начале статьи, мы будем использовать NodeJS для запуска бота. Дополнительно нам потребуются две библиотеки:

  • discord.js (основная библиотека для работы бота);
  • dotenv (будет использоваться для конфигурационного файла).

Создадим рабочую директорию проекта и файл package.json. В моем случае рабочая директория располагается в директории /home, но вы можете выбрать любую другую на свое усмотрение.

  mkdir /home/my-discord-bot  cd /home/my-discord-bot  touch package.json

Примерный вид файла:

  {  "name": "my-discord-bot",   "version": "1.0.0",   "description": "My discord bot",   "author": "Me ",   "main": "app.js",   "keywords": [   "nodejs"    ],   "dependencies": {   "discord.js": "^12.1.1",   "dotenv": "^8.2.0"    }  }

В нем мы указали имя будущего пакета (name), версию (version), описание (description), автора (author), основной файл (app.js) и список зависимостей (dependencies).

Запустим npm install и убедимся, что создался файл package-lock.json, который потом также будет скопирован в контейнер.

Теперь создадим файл самого бота app.js и запишем в него следующий код:

  // Загрузка библиотек и конфигурационного файла  require('dotenv').config();    const Discord = require('discord.js');  const bot = new Discord.Client();  const token = process.env.token;  const prefix = process.env.prefix;    bot.login(token);    // Запуск бота  bot.on('ready', () => {   console.info(`Logged in as ${bot.user.tag}!`);   console.info(`Current prefix: ${prefix}`);  });    // Команда для приветственного сообщения  bot.on('message', message => {   if (message.content === `${prefix}hello`) {   console.log(message.content, message.author);   message.channel.send('hello!');    }  });    // Команда для вывода количества участников сервера  bot.on('message', message => {   if (message.content === `${prefix}server`) {   console.log(message.content, message.author);   message.channel.send(`Сообщество: ${message.guild.name}nУчастников: ${message.guild.memberCount}`);    }  });

Учитывая, что здесь используется конфигурационный файл, создадим в рабочей директории .env и запишем в него:

  token=tokenbot  prefix="!"

Вместо “tokenbot” подставляется token бота, который был сохранен в начале статьи, а в качестве prefix указывается символ, после которого будут вводиться команды. Я выбрал в качестве префикса “!”, но вы можете выбрать другой удобный символ, если только он не используется самим Discord, как например “@” или “/”.

Создание Docker-контейнера

Теперь в рабочей директории нам нужно создать Dockerfile, который будет содержать инструкции для сборки образа, на основе которого будет запущен контейнер. В него мы запишем:

  FROM node:14    WORKDIR /home/my-discord-bot  COPY package*.json ./    RUN npm install    COPY . .    EXPOSE 8080    CMD ["node", "app.js"]

Создадим файл .dockerignore и запишем туда несколько локальных файлов, которые будут игнорироваться:

  node_modules  npm-debug.log

Соберем образ и запустим на его основе контейнер:

  docker build -t authorname/my-discrod-bot  docker run -p 42150:8080 -d authorname/my-discrod-bot

Вместо “authorname” можно ввести имя пользователя, от которого создается бот, и через “/” указать имя бота.

Проверим, что контейнер запустился, специальной командой:

  docker ps     9fbaf1176c7a        authorname/my-discrod-bot   "docker-entrypoint.s…"   6 seconds ago       Up 4 seconds        0.0.0.0:42150->8080/tcp   pensive_carson

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

Бот запущен и работает в контейнере. Осталось только пригласить его на сервер и проверить его работу.

Для приглашения необходимо: 

  1. Вернуться обратно по ссылке.
  2. Выбрать созданное приложение.
  3. Перейти во вкладку “OAuth2”.
  4. В списке “Scopes” выбрать “bot”.
  5. Скопировать ссылку и перейти по ней в браузере.
  6. Выбрать сервер, на который будет добавлен бот.

imageТеперь мы можем проверить работу двух команд, созданных ранее: 

Заключение

В этой ознакомительной статье мы зарегистрировали новое приложение, создали бота, написали несколько простых команд, запустили контейнер и пригласили бота на сервер.

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

  • документация библиотеки discordjs;
  • справочная информация по JavaScript;
  • ознакомительный курс по Docker.

Надеюсь, этот материал будет полезен для всех, кто давно хочет создать собственного бота в Discord, но не знает, с чего начать.

Вопросы и пожелания можно оставлять в комментариях. Спасибо за внимание!

Наши постоянные авторы и читатели делятся лайфхаками, основанными на личном опыте. Полная свобода самовыражения.

Оцените статью
Рейтинг автора
4,8
Материал подготовил
Егор Новиков
Наш эксперт
Написано статей
127
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий