(Discord.py) 如何获取整个嵌入内容?
问题描述
我想获取所有嵌入内容(包括图片链接),我试过这个:
I wanna get all the embed content(including the image link), I tried this:
print(msg.embeds)
这又回来了:
[<discord.embeds.Embed object at 0x000002E48768CD30>]
[<discord.embeds.Embed object at 0x000002E48768CAF0>]
[<discord.embeds.Embed object at 0x000002E487F04040>]
[<discord.embeds.Embed object at 0x000002E48768CA60>]
[<discord.embeds.Embed object at 0x000002E48768C9D0>]
[<discord.embeds.Embed object at 0x000002E487F043A0>]
我在文档中找不到任何关于此的内容,只有关于发送嵌入的内容.
I cant find anything about that on the documentation, only about sending embeds.
解决方案
你只是得到嵌入.根据 API References,您无法使用 message.content
之类的一个函数来获取整个嵌入内容.您必须像 Embed 那样逐部分获取它.标题
,嵌入.description
和 Embed.fields
.
You're just getting embeds. According to API References, you can't get the whole embed content with one function like message.content
. You have to get it part by part like Embed.title
, Embed.description
and Embed.fields
.
Embed.fields
返回表示字段内容的 EmbedProxy
列表.有关您可以访问的可能值,请参阅 add_field().如果属性没有值,则返回 Empty.
Embed.fields
Returns a list ofEmbedProxy
denoting the field contents. See add_field() for possible values you can access. If the attribute has no value then Empty is returned.
也就是说,您可以获得嵌入标题、描述以及字段的名称和值.这是一个简单的例子:
So that means, you can get embed title, description, and fields' name and value. Here's a simple example for this:
embed = discord.Embed(title='Example', description='Embed')
embed.add_field(name='field 1 name', value='field 1 value')
embed.add_field(name='field 2 name', value='field 2 value')
embed.title # returns 'Example'
embed.description # returns 'Embed'
embed.fields # returns a list of fields
embed.fields[0].name # returns 'field 1 name'
embed.fields[0].value # returns 'field 1 value'
embed.fields[1].name # returns 'field 2 name'
embed.fields[1].value # returns 'field 2 value'
相关文章