Nextcord机器人转发消息时发送对象特征而非内容的问题
问题解决:Nextcord机器人转发消息显示对象信息而非内容
你遇到的问题是因为直接将Message对象传递给了send()方法,Nextcord会默认输出该对象的字符串描述,而非消息的实际文本内容。
修正代码
@bot.event async def on_message(message): # 跳过机器人自身消息,避免循环触发 if message.author.bot: return if message.author.id in pinged: target_channel = bot.get_channel(1128256630828568596) if target_channel: # 发送消息的文本内容而非Message对象 await target_channel.send(message.content) await message.delete()
关键修改说明
- 使用
message.content获取用户发送的文本内容,这是你需要转发的核心信息 - 新增
message.author.bot判断,防止机器人处理自己发送的消息引发循环 - 用
in操作符替代循环遍历,更高效地判断用户是否在目标列表中 - 增加频道存在性检查,避免因目标频道不存在导致运行报错
内容的提问来源于stack exchange,提问作者TheDomo
相关产品推荐
相关产品推荐

