首页 > 解决方案 > 我无法通过 discord.py 获得某些公会

问题描述

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

takenGuild = client.get_guild(myServerID)

采取Guild返回无

当我尝试循环公会时

for guild in client.guilds:
    print(guild.id)

它没有打印任何东西。

我的整个代码:

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')

标签: pythondiscord.py

解决方案


您必须等待机器人准备好才能使用它。更新后仅供参考bot现在比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')

推荐阅读