繁体   English   中英

不和谐.py | 会员名单

[英]Discord.py | Member list

我需要获取我的 Discord 服务器上所有用户的列表。 我试过这段代码,但出现错误。
我怎样才能做到这一点?

首先,我尝试获取所有成员并将其放入 .txt 文件中。

def get_users(self):
   with open('users.txt','w') as f:
      for member in discord.Guild.fetch_members(limit=150):
         print("{}".format(member.name), file=f)

然后我把它放到init函数中,因为我需要在机器人启动时获取这个列表。

class BotBanners(commands.Cog):
    def __init__(self, bot):
        self.bot = bot

        BotBanners.get_users_avatars(self)
        BotBanners.generate_main_banner(self)

我遇到了一个错误,我找不到任何关于它的信息。

错误


Traceback (most recent call last):
  File "bot.py", line 48, in <module>
    bot.load_extension('cogs.{}'.format(filename[:-3]))
  File "/home/name/.local/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 664, in load_extension
    self._load_from_module_spec(spec, name)
  File "/home/name/.local/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 624, in _load_from_module_spec
    raise errors.ExtensionFailed(key, e) from e
discord.ext.commands.errors.ExtensionFailed: Extension 'cogs.BotBanners' raised an error: TypeError: fetch_members() missing 1 required positional argument: 'self'

问题是您像静态方法一样在Guild类上调用fetch_members ,但您需要在公会的实例上调用它。 很可能您只想通过 ID 获取该公会,或者遍历机器人的公会。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM