[discord.py] 動かないとき、エラーがでたときの解決策

この記事は、シリーズ「discord.pyでBotを作ろう」の一部です。( 4 / 4 )

discord.pyでBotを開発していると、以下のような事態に出くわすと思います。

  • 「実行すると、エラーメッセージが出て、起動しない」
  • 「エラーは出ないが、思ったように動かない」
  • 「Botが反応しない」
  • 「こういうことをしたいけど、どうやったら実現できる?」

今回は、こういうとき、どのように解決していけばいいかについてです。

ライブラリのバージョンを確認する

discord.pyは、「v0.16.12」「v1.0.0(a)」の2つが広く使われています。
2019年4月中旬現在、pip installコマンドでインストールされるのは、discord.py v1.0.0です。
しかし、未だにネット上にはv0.16.12の情報が広く残っています。参考にしようとしている情報が、自分の使っているバージョンに適用できるものであるか、しっかり確認しましょう。
(参考)Botがでエラー(AttributeError等)で動かない!原因と解決方法

ドキュメントを読む

discord.py Document
たいていのことはドキュメントに書いてありますので、困ったときはまずドキュメントを見てみるとよいでしょう。
英語ですが、Google翻訳でなんとかなります。
全文翻訳には至っていませんが、有志が翻訳作業を進めている日本語版もあります。

discord.pyのサーバーで質問する

official discord.py server
Discordにある、discord.pyの公式サーバです。基本的に英語サーバですが、日本語話者のためのチャンネルもあり、日本語で雑談や質問などの会話が行われています。
一般的な質問サイトよりもすばやく的確な回答が得られるでしょう。

質問するときのコツ

手早く解決するには、下記のようなことに気をつけて質問するといいかと思います。
(これはdiscord.pyサーバで質問するときに限ったことではないですが)
– コードは可能な限り全部載せる(トークンを隠すのを忘れずに!)
– エラーの内容も具体的に載せる
– 困っている内容は、具体的に書く。
– ✕「動きません」→ ◯「Aのようにしたいけど、Bとなってしまう」

ソースコードを読む

discord.py[rewrite] – GitHub
ドキュメントを読んでもよく理解できないときは、ソースコードを見て動きを追ってみると解決することがあるかもしれません。
ハードルが高く感じられるかもしれませんが、discord.pyは1ファイルのライン数が少なく、ファイル構成なども整理されているので、読みやすいです。

RoboDannyのソースコードを読む

RoboDanny – GitHub
RoboDannyは、開発リーダーDanny氏がdiscord.pyを使ってコーディングしたbotです。
こういうときってどうしたらいいんだろう?このクラスってどう使うと良いんだろう?という疑問は、RoboDannyのコードを読むと、たいてい解決します。

Twitterでcodに聞く

cod – Twitter
私で分かることならお手伝いしますので、お気軽にリプライなどお送り下さい。
質問と回答の内容を記事にまとめさせてもらうことがあります。

この記事は、シリーズ「discord.pyでBotを作ろう」の一部です。( 4 / 4 )