我想讓機器人啟動時,我會獲得有關公會成員的資訊,例如:id,公會 ID。警告和理由。
我有這個代碼:
async def on_ready(self):
for guild in guild:
for member in guild.members:
values = {
"_id":member.id,
"guild_id":guild.id,
"warns": 0 ,
"reasons": []
}
server_values = {
"_id": guild.id,
"case": 0
}
if collusers.count_documents({"_id": member.id, "guild_id": guild.id}) == 0:
collusers.insert_one(values)
if collservers.count_documents ({"_id": guild.id}) == 0:
collservers.insert_one(server_values)
但我也有錯誤:
Ignoring exception in on_ready
Traceback (most recent call last):
File "C:\Users\Andriyko\AppData\Local\Programs\Python\Python310\lib\site-packages\nextcord\client.py", line 351, in _run_event
await coro(*args, **kwargs)
File "c:\Users\Andriyko\Desktop\Ghostbot\modules\warn.py", line 18, in on_ready
for guild in guild:
UnboundLocalError: local variable 'guild' referenced before assignment
uj5u.com熱心網友回復:
您沒有為 variable 分配任何內容guild。您可以獲得guilds機器人的所有內容:
for guild in self.client.guilds:
您還可以首先獲取公會物件(如果您只想為一個公會運行它):
guilds = client.get_guild(id)
for guild in guilds:
...
另外,請記住,您必須啟用intents.Members才能獲取guild.members.
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/386704.html
