为什么client.emojis是client.get_all_emojis()的较新版本,在使用Discord的Python API时返回empy列表?

2024-06-28 20:25:57 发布

您现在位置:Python中文网/ 问答频道 /正文

基于thisthisthis&this,我希望client.get_all_emojis()在我的Discord聊天机器人中工作:

import discord
from dotenv import load_dotenv
import asyncio
import os

load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')
GUILD = os.getenv('DISCORD_GUILD')

client = discord.Client()

@client.event
async def on_message(message):
    if message.content == 'send emoji':
        await message.channel.send(client.get_all_emojis()[0])

client.run(TOKEN)

我希望client.get_all_emojis()是一个列表,&;希望bot发送该列表的第一个元素。然而,我得到:

Traceback (most recent call last):
File "/home/ps738/.local/lib/python3.8/site-packages/discord/client.py", line 312, in _run_event

await coro(*args, **kwargs) > File "bot5.py", line 15, in on_message

await message.channel.send(client.get_all_emojis()[0]) > AttributeError: 'Client' object has no attribute 'get_all_emojis'

要点:“客户端”对象没有属性“获取所有表情”

我怎样才能解决这个问题


添加

根据Patrickthis answer的评论&this source{a8}{a9}对于我的问题,我尝试用{}替换{}。现在它说:IndexError: list index out of range,所以可能返回了一个空列表,这并不理想


Tags: importclienttokensendmessage列表getos