我试图将角色授予服务器上的所有用户

时间:2020-04-30 07:11:15

标签: python-3.x discord discord.py discord.py-rewrite

第一

    @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,因为它可能是请求限制,但仍然有问题。

请就这个问题提供建议

0 个答案:

没有答案