Quiet

書いて覚えるDiscord.py

# はじめに

この記事はいくつかのパートに分かれています。このパートでは「Bot Commands Framework」をあえて使わない方法をご紹介します。
理由としては主にこちらの方が実際にどういう風にできているのかがよくわかると個人的に思っているからです。既にある程度の知識がある方は続編をご覧ください。

# discord.py をインストールしよう

LinuxやMacの場合
python3 -m pip install -U discord.py

Windowsの場合
py -3 -m pip install -U discord.py

# 実際に最低限の Bot を作ってみる

さて、では本当に起動し、起動した際にログインした Bot の情報などを出すだけの Bot を作ってみましょう。
これに関しては公式ドキュメントを参考にしています。

#main.py

import discord

client = discord.Client()

@client.event
async def on_ready():
print(f'{client.user.name}にログインしました')

@client.event
async def on_message(message):
if message.author.bot:
return
if message.content == 'normal':
await message.channel.send(f'あなたの名前は{message.author.name}ですね!')
elif message.content == 'special':
user = await client.fetch_user(ユーザーIDをここに)
await message.channel.send(f'あなたの名前は{user.name}ですね!')

client.run('TOKENをここに')

このコードに書いてあるものの使い道はいかに記載しておきます。

# 覚えておくと便利なもの

これは本当に一部だけです。これらの者は基本的に message.channel.namemessage.channel.id といった風に途中まで同じ書きかたの物がとても多い
ので | メッセージ | メッセージがあったチャンネル | そのチャンネルの情報 | などといった風に考えるとわかりやすいと思います。
基本的に 公式ドキュメント をご覧いただければほとんどわかると思います。

書き方内容物
message.author.botメッセージの作者が bot か否かが入っている
message.contentメッセージの内容(こんにちはを送信したらこんにちは)が入っている
message.channel.idメッセージが送信されたチャンネルの ID が入ってる

# 参考

以下の記事などを参考にさせていただきました。

公式ドキュメント
1ntegrale9 様の記事

# 最後に

一応私が昔かなり時間をかけて調べたことなどをある程度書いたつもりですが、何かご希望がありましたら、こちら
のアカウントまで連絡いただけると幸いです。

前の投稿

私的使ってみて便利なタスク管理ツール