[英]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.