如何获取我的机器人在discord.py中的服务器列表

时间:2020-03-31 22:00:00

标签: python python-3.x discord discord.py

我想使用一个命令打印我的机器人所在的服务器列表。这就是我所拥有的。当我使用命令时,它会发送“属性对象为0x000001988E164270”而不是服务器名称列表

import discord
from discord.ext import commands

client = discord.Client
activeservers = client.guilds

class OwnerCommands(commands.Cog):

    def __init__(self, client):
        self.client = client

    @commands.Cog.listener()
    async def on_ready(self):
        print("OwnerCommands Is Ready")

    @commands.command()
    async def servers(self, ctx):
        await ctx.send(activeservers)
        print(activeservers)

def setup(client):
    client.add_cog(OwnerCommands(client))

1 个答案:

答案 0 :(得分:2)

client.guilds是漫游器已连接到的所有公会的列表。您需要对此进行迭代。

此外,在机器人连接之前将调用mounted,这意味着列表将为空。将其移到命令内部,以在调用命令时获得最新列表。

activeservers = client.guilds