那么如何获得我的机器人连接或安装的所有服务器列表。我使用下面的代码,但它现在不知道为什么。
servers = list(bot.servers)
print("Connected on " + str(len(bot.servers)) + "servers:")
for x in range(len(servers)):
print(' ' + servers[x-1].name)
我的bot.py完整代码
token = "This is my Token" # This is what the bot uses to log into Discord.
prefix = "?" # This will be used at the start of commands.
import discord
from discord.ext import commands
from discord.ext.commands import Bot
bot = commands.Bot(command_prefix=prefix)
bot.remove_command("help")
@bot.event
async def on_ready():
print('Logged in as')
print(bot.user.name)
print(bot.user.id)
print(discord.__version__)
print('------')
@bot.command(pass_context=True)
async def ping(ctx):
msg = 'Pong {0.author.mention}'.format(ctx.message)
await bot.say(msg)
@bot.command(pass_context=True)
async def hello(ctx):
msg = 'hello... {0.author.mention}'.format(ctx.message)
await bot.say(msg)
bot.run(token)
不知道你在哪里使用代码查找服务器,但在你的情况下使用bot.servers
确实返回了机器人可以看到的所有服务器的可迭代。
您可以修改on_ready
事件以打印出所有服务器名称。
@bot.event
async def on_ready():
print('Logged in as')
print(bot.user.name)
print(bot.user.id)
print(discord.__version__)
print('------')
print('Servers connected to:')
for server in bot.servers:
print(server.name)