簡體   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