Discord Developer PortalでBotを作成する
Discordにログイン
Discord Developer PortalにアクセスしDiscordのアカウントでログイン。
New Application の作成
右上の New Applicationをクリックして新規BotをDiscord側で作成する。
画面左Botタブをクリック
画面右上Add botボタンをクリックした後yesをクリック。
Copyをクリックしてメモ帳か何かに書き写しておく。
※ほかの人にこの文字列が渡るとbotを導入したサーバーを荒らされる可能性があるため漏れないように。
漏れたと思ったときはRegenerateをクリックしてトークンを再生成するなどして対応すること。
画面左OAth2タブをクリック
SCOPES枠内真ん中あたりにあるbotにチェックを入れる。
下にスクロールしてBot PermissionsでBotに与える権限を選ぶ。
自分で作ったテストサーバーに導入して遊ぶ分にはAdministrator(管理者権限)でかまわない。
権限を与えた後はSCOPE枠内の下に出てきたリンクをコピーしてアクセスする。
アクセスしたらBOTを追加する場所を選択しはいを押す。
また、管理者権限を与えている場合管理者権限を与えてよいか確認メッセージが出る。
PythonでBotの内容を書く
環境
Windows10 x64
Python3.7.7 x64
discord.py 1.2.5
Pythonを導入
Python公式のDownloadsから対応バージョンのpythonをダウンロード。
Filesの内環境に合ったものをダウンロード。
今回はWin x64なのでWindows x86-64 executable installer
インストール画面はとりあえずOK連打
エディタを導入
今回はVisualStudioCodeを使用。
Downloadからバージョンにあったものを使用。
discord.pyをPIPで入れる
コマンドラインにて下記コマンドを実行
動かす
下記コードをDiscordBot.pyで保存し実行(async/await版)
# -*- coding: utf-8 -*-
# ライブラリのインポート
import discord
import asyncio
TOKEN = 'ここにコピーしたトークンを貼り付ける'
client = discord.Client()
# ボットの起動時に実行されるイベントハンドラを定義
@client.event
async def on_ready():
print('Bot Launched')
# メッセージの送信時に実行されるイベントハンドラを定義
@client.event
async def on_message(message):
if message.author.bot:
pass
elif message.content.startswith('こんにちは!'):
send_message = f'{message.author.mention}さん、こんにちは!'
await message.channel.send(send_message)
# ボットを実行
client.run(TOKEN)
# ここより下に書かれた処理はボットが停止するまで実行されない
コマンドラインで下記コマンドをファイルのある場所で実行
python DiscordBot.py