1. ホーム
  2. python

[解決済み] discord.pyでボットに自分自身のメッセージを編集させる方法

2022-02-19 21:06:48

質問

ボットに自分のメッセージを編集させる方法はありますか?回答を探したのですが、見つかりませんでした。

解決方法を教えてください。

これはコードによって行われます。ボットプログラムの中でどうにかして実行する必要があります。例えば、それを実行するコマンドを作っておいて、後でそれを削除すればいいのです。

  1. メッセージオブジェクトを取得します。これは、まずチャンネルオブジェクトを取得し、そこからメッセージを取得することで可能です。基本的には
channel = bot.get_channel(id_of_the_channel)
message = await channel.fetch_message(id_of_the_message)

# make sure that you change "id_of_the_channel" for the id of the channel (as an integer)
# and make sure to change "id_of_the_message" for the id of the message (as an integer)
# you can get those by enabling Developer Mode in the Appearance settings in discord
# and right-clicking on the channel to get its id, and right-clicking on the message to get
# its id as well.

  1. それが済んだら、次のように呼び出します。 編集 メソッドで編集できます。また、コルーチンなので、awaitする必要があります。それから、編集中のメッセージに持たせたい新しいテキストを コンテンツ kwargです。例えば、新しく入れたいテキストが "メッセージの新しい内容" であれば、次のようになります。
await message.edit(content="the new content of the message")

そして、基本的にはこれだけです。この3行のコードをボットで実行すると、メッセージが編集されます。