Discord.py 创建没有字幕的嵌入

Posted

技术标签:

【中文标题】Discord.py 创建没有字幕的嵌入【英文标题】:Discord.py creating embeds without subtitles 【发布时间】:2021-05-07 06:12:23 【问题描述】:

总的来说,我是 python 和 *** 的新手,所以如果这不合适,请告诉我。

问题:如何使用 discord.py 在 discord 中创建嵌入,而无需向嵌入添加子标题?

例如,这是我的嵌入函数的简化版本:

def test_embed():
     embedPlacehold = discord.Embed(title='title', color=0xffbf00)
     embedPlacehold.add_field(name='sub-title', value='test', inline=False)
     return embedPlacehold

我要删除的部分来自第 3 行 name='subtitle。 但是,discord.py 中的.add_field 函数需要将其作为参数,而name 不能设置为空字符串。

现在我正在寻找不需要设置字幕的替代功能。我知道其他用 javascript 编程的机器人能够发送不带字幕的嵌入,所以我很肯定在 python 中也有办法实现这一点。

我浏览了很多网站,但仍然找不到答案,因此我将不胜感激!

【问题讨论】:

虽然我不确定你是否尝试过使用name=Name 我刚试了一下,它说“名称”没有定义。 【参考方案1】:

这是一个奇怪的地方,Discord.py 没有意义,至少不能避免或留空,但是有一些方法可以规避这个问题

在本例中,您可以只在不需要的字段中使用粗体装饰器,也可以使用 unicode 空白字符,它也会显示为空白字段。

def test_embed():
     embedPlacehold = discord.Embed(title='title', color=0xffbf00)
     embedPlacehold.add_field(name='sub-title', value='** **', inline=False)
     return embedPlacehold
def test_embed():
     embedPlacehold = discord.Embed(title='title', color=0xffbf00)
     embedPlacehold.add_field(name='sub-title', value='\u200b', inline=False)
     return embedPlacehold

如果你想要一个列表,你可以只使用多行字符串,这会使内容看起来好像没有副标题

def test_embed():
     embedPlacehold = discord.Embed(title='title', color=0xffbf00)
     embedPlacehold.add_field(name='sub-title', value='''
     test
     test
     test
     test
     test''', inline=False)
     return embedPlacehold

【讨论】:

【参考方案2】:

尝试在名称参数中添加“\u200b”,我相信使用“\a”也可以。

【讨论】:

【参考方案3】:

您可以尝试在没有任何字段的情况下进行嵌入,并使用 discord.Embed() 中的“description”参数使其包含您需要的唯一数据(如果这是您正在寻找的数据)!

def test_embed():
     embedPlacehold = discord.Embed(title='', description='test' color=0xffbf00)
     return embedPlacehold

这将返回一个只有描述字段而没有标题的嵌入。 但是,描述可能是粗体的,我不记得确切的细节。 希望我能有所帮助!

【讨论】:

以上是关于Discord.py 创建没有字幕的嵌入的主要内容,如果未能解决你的问题,请参考以下文章

在 discord.py 嵌入中向下滚动

尝试创建嵌入命令 discord.py

如何使用 discord.py 获取消息

使用 Discord.py,有没有办法读取嵌入的消息?

如何改进我的队列系统 - Discord.py

Discord.py 嵌入未发送