Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.06.2022, 17:48   #1
Nindziaorel
Новичок
Джуниор
 
Регистрация: 19.06.2022
Сообщений: 1
По умолчанию Бот discord на python с выдачей ролей по нажатию на кнопку

Помогите пожалуйста с ботом. Код взял с зарубежных уроков. Там все у них работает, а у меня нет(
import discord
from discord import app_commands

class button_view(discord.ui.View):
def __init__(self) -> None:
super().__init__(timeout = None)

@discord.ui.button(label = “verify”, style = discord.ButtonStyle.green, custom_id = “verify”)
async def verify(self, interaction: discord.Interaction, button: discord.ui.Button):
if type(client.role) is not discord.Role:
client.role = interaction.guild.get_role(98010792 3646722068)
if client.role not in interaction.user.roles:
await interaction.user.add_roles(client.r ole)
await interaction.response.send_message(f “I have given you {client.role.mention}!”, ephemeral = True)
else: await interaction.response.send_message(f “You already have {client.role.metion}!”, ephemeral = True)

class aclient(discord.Client):
def __init__(self):
super().__init__(intents = discord.Intents.default())
self.synced = False
self.role = 980107923646722068
self.added = False

async def on_ready(self):
await self.wait_until_ready()
if not self.synced:
#
self.synced = True
if not self.added:
self.add_view(button_view())
self.added = True
print(f“We have logged in as {self.user}.”)

client = aclient()
tree = app_commands.CommandTree(client)

@tree.command(guild = discord.Object(id=97941708657093018 6), name = ‘button’, description='Launches role button')
async def button(interaction: discord.Interaction):
await interaction.response.send_message(v iew = button_view())

client.run('my token')

Ошибка вылазит такая:

Traceback (most recent call last):
File “C:\Work\Python\Python Test1\Bot roles эксперементальный\roli — копия.py”, line 1, in <module>
from discord import app_commands
File “C:\Users\User\AppData\Local\Progra ms\Python\Python310\lib\site-packages\discord\app_commands\__ini t__.py”, line 12, in <module>
from .commands import *
File “C:\Users\User\AppData\Local\Progra ms\Python\Python310\lib\site-packages\discord\app_commands\comma nds.py”, line 51, in <module>
from ..enums import AppCommandOptionType, AppCommandType
ImportError: cannot import name ‘AppCommandOptionType’ from ‘discord.enums’ (C:\Users\User\AppData\Local\Progra ms\Python\Python310\lib\site-packages\discord\enums.py)

Process finished with exit code 1


Хотя установленные все модули последних версий discord 2+ и т.д.
Nindziaorel вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подключение папок (Python Discord) Demon666Tv Python 0 09.10.2021 17:03
Как обнулить div по нажатию на кнопку (на JavaScript) Коза с капустой JavaScript, Ajax 3 10.10.2016 22:50
Вызов метода по нажатию на кнопку MinorUfa C# (си шарп) 1 28.05.2014 10:11
по нажатию на кнопку запустить exe и bat файлы Ципихович Эндрю HTML и CSS 4 14.06.2012 14:17
Как открыть папку по нажатию на кнопку qwerty55 Общие вопросы Delphi 9 27.04.2012 10:56