NotFound:404 未找到(错误代码:10011):未知角色
Posted
技术标签:
【中文标题】NotFound:404 未找到(错误代码:10011):未知角色【英文标题】:NotFound: 404 Not Found (error code: 10011): Unknown Role 【发布时间】:2021-03-08 13:25:00 【问题描述】:我正在尝试在我的 dicord.py 和 discord.ext.commands 机器人中添加静音命令,并且由于其他不和谐角色不允许“静音”角色正常运行,我必须在分配之前从成员中删除所有角色成员的“静音”角色。一切似乎都很好,但我无法与 member.roles 列表相处,通过 print() 似乎很好并显示每个角色的名称或 ID,但它给了我这个错误:
NotFound: 404 Not Found (error code: 10011): Unknown Role
我尝试更改不同类型的 member.roles 列表,但它们都不起作用
@client.command()
@commands.has_any_role('Admin', 'Mod', 'Owner')
async def mute(ctx, member: discord.Member = None):
for i in range(100):
try:
print(member.roles[i])
await member.remove_roles(member.roles[i])
except IndexError:
print('Something happened, maybe index out of range?')
role = ctx.guild.get_role(781129235079233586)
mute_message = ('Muted ' + str(member))
print(mute_message)
await member.add_roles(role)
await ctx.send(mute_message)
我也尝试使用角色的 ID 代替名称
id(member.roles[i])
但我明白了:
Command raised an exception: AttributeError: 'int' object has no attribute 'id'
【问题讨论】:
【参考方案1】:您的循环设置不正确。你应该看看Member.roles
。
注意:使用for i in range(100)
是不好的做法,可以直接循环。
for role in member.roles:
await member.remove_roles(role)
【讨论】:
【参考方案2】:使用
role = discord.utils.get(message.guild.roles, id=781129235079233586)
而不是
role = ctx.guild.get_role(781129235079233586)
【讨论】:
以上是关于NotFound:404 未找到(错误代码:10011):未知角色的主要内容,如果未能解决你的问题,请参考以下文章
microsoft .net framework 远程服务器返回错误:(404) 未找到