@commands.has_permissions(administrator=True)
@commands.command(name="addrole")
async def _addrole(self, ctx):
for member in ctx.guild.members:
print(member)
运行此命令时,我能够使该服务器上的所有用户获得。
所以我尝试使用相应的for语句
@commands.has_permissions(administrator=True)
@commands.command(name="addrole")
async def _addrole(self, ctx, getrole:discord.Role):
SearchRole = discord.utils.get(ctx.guild.roles, name=getrole.name)
for member in ctx.guild.members:
if SearchRole in member.roles:
print(f"{member}passsed")
pass
else:
await member.add_roles(SearchRole)
print(f"{member}added")
我尝试使用该语法
命令执行时,只给126个人分配了角色,不再分配角色。
我使用了asyncio.sleep
,因为它可能是请求限制,但仍然有问题。
请就这个问题提供建议