You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Discord.py Webhook发送消息的Message ID以实现编辑

解决Discord Webhook发送Embed后获取Message ID的问题

你当前代码中webhook.send()方法默认不会返回发送后的消息对象,因为wait参数默认值是False。要获取消息ID,必须将wait设为True,这样方法会返回完整的Message实例,从中即可提取id属性。

修改后的代码

embed = discord.Embed(title="Post Title")
embed.add_field(name="Req Amount", value="100")
embed.add_field(name="Return Amount", value="120")

webhook = SyncWebhook.partial(1055498127618097174, "prxoD_ZW0vO6ghrwZNhOiwI9AeLBfNYYss6MTLPkjgvAb_B3WJgWNLMMtPWYZ67GTYbn")
# 添加wait=True参数,获取发送后的消息对象
sent_message = webhook.send(embed=embed, wait=True)
# 提取Message ID
message_id = sent_message.id
print(f"发送的消息ID: {message_id}")

用获取到的ID编辑消息示例

如果需要后续自动化编辑这条消息,可以使用webhook.edit_message()方法:

# 创建更新后的Embed
updated_embed = discord.Embed(title="Updated Post Title")
updated_embed.add_field(name="Req Amount", value="150")
updated_embed.add_field(name="Return Amount", value="180")

# 编辑指定ID的消息
webhook.edit_message(message_id, embed=updated_embed)

注意事项

  • 确保你的Webhook拥有对应频道的消息编辑权限
  • 如果Webhook关联了特定频道,编辑操作需要在该频道内有效

内容的提问来源于stack exchange,提问作者Average Guy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 02:55:19