我无法使用 discord.py 获得某些公会

swo*_*1st 1 python discord.py

我试图在机器人启动时扮演某些角色。首先,我需要参加公会,但我无法实现。

takenGuild = client.get_guild(myServerID)
Run Code Online (Sandbox Code Playgroud)

takeGuild 返回 无

当我尝试循环公会时

for guild in client.guilds:
    print(guild.id)
Run Code Online (Sandbox Code Playgroud)

它不打印任何东西。

我的整个代码:

import discord
from discord.ext import commands, tasks
from discord.utils import get

client = commands.Bot(command_prefix = '.')


takenGuild = client.get_guild(123123123123123123)
print(takenGuild.id)

for guild in client.guilds:
    print(guild)
    print(guild.id)
    
    
client.run('Token')
Run Code Online (Sandbox Code Playgroud)

Abd*_*ziz 5

您必须等待机器人准备就绪才能使用它。FYIbot现在比更新后更常见client

import discord
from discord.ext import commands, tasks
from discord.utils import get

bot = commands.Bot(command_prefix = '.')

@bot.event
async def on_ready():
    print("I am running on " + bot.user.name)
    print("With the ID: " + bot.user.id)
    print('Bot is ready to be used')
   # after it is ready do it

    takenGuild = bot.get_guild(123123123123123123)
    print(takenGuild.id)

    for guild in bot.guilds:
        print(guild)
        print(guild.id)
    
    
bot.run('Token')
Run Code Online (Sandbox Code Playgroud)