Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 403禁止(错误代码:50001):添加角色时缺少访问权限| discord.py_Python_Python 3.x_Discord_Discord.py_Discord.py Rewrite - Fatal编程技术网

Python 403禁止(错误代码:50001):添加角色时缺少访问权限| discord.py

Python 403禁止(错误代码:50001):添加角色时缺少访问权限| discord.py,python,python-3.x,discord,discord.py,discord.py-rewrite,Python,Python 3.x,Discord,Discord.py,Discord.py Rewrite,我正试图快速地将不同的角色分配给用户,给用户留下彩虹的印象(是的,我知道这是反对TOS的),我开始在删除角色之前向用户添加角色。然而,当添加角色时,我在这篇文章的标题中得到了错误。我已经研究了这个问题,并尝试了很多方法来解决它。bot的角色比所分配的角色更高。以下是我的代码和输出: import discord from discord.ext import commands bot = commands.Bot(command_prefix="$") role_name

我正试图快速地将不同的角色分配给用户,给用户留下彩虹的印象(是的,我知道这是反对TOS的),我开始在删除角色之前向用户添加角色。然而,当添加角色时,我在这篇文章的标题中得到了错误。我已经研究了这个问题,并尝试了很多方法来解决它。bot的角色比所分配的角色更高。以下是我的代码和输出:

import discord
from discord.ext import commands

bot = commands.Bot(command_prefix="$")
role_name = "Rainbow Six Seige"
peopleWithRole = []
guild = discord.Guild 

@bot.event
async def on_ready():
    print("Logged in as")
    print(bot.user.name)
    print("------")
    guild = bot.guilds[0]
    colours = [discord.utils.get(guild.roles, name='red'),
               discord.utils.get(guild.roles, name='green'),
               discord.utils.get(guild.roles, name='blue')
               ]

    role = discord.utils.find(
        lambda r: r.name == role_name, guild.roles)
        
    for user in guild.members:
        if role in user.roles:
            peopleWithRole.append(user)

    for color in colours:
        for user in peopleWithRole:
            await user.add_roles(color)

bot.run("my token")
输出:

Logged in as
test bot
------
Ignoring exception in on_ready
Traceback (most recent call last):
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\User\Desktop\test\test.py", line 29, in on_ready
    await user.add_roles(color)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\member.py", line 641, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\http.py", line 241, in request
    raise Forbidden(r, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access

确保您有一个角色被赋予bot,该bot可以访问
管理角色
。此外,当您从dev门户添加bot时,您可以授予它权限


最佳做法是创建一个名为
BOT
的角色,该角色具有所有权限,并将其授予服务器中的所有BOT

确保您已将角色授予有权访问
管理角色的BOT
。此外,当您从dev门户添加bot时,您可以授予它权限

最佳做法是使用所有权限创建一个名为
BOT
的角色,并将其授予服务器中的所有BOT