discordのbotを作る
herokuとdiscord.pyを用いてbotを作成したい。
環境
ディレクトリ構成
.
├── Procfile
├── bot
├ ├── bot.py
├── requirements.txt
└── runtime.txt
まず、こちらの記事よりheroku側にトークンを設定した。(トークンは直接書いて動作確認済み)
pythonのversion
3.8.5
runtime.txt
python-3.8.5
Procfile
worker: python bot/bot.py
bot.py
from discord.ext import commands import os token = os.environ['DISCORD_BOT_TOKEN'] #class definition class Bot(commands.Bot): #call when ready async def on_ready(self): print('-----') print(self.user.name) print(self.user.id) print('-----') #Bot instantiation and launch process if __name__ == '__main__': bot = Bot(command_prefix='!') bot.run(token)
エラーコード
Traceback (most recent call last): File "bot.py", line 4, in <module> token = os.environ['DISCORD_BOT_TOKEN'] File "/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/lib/python3.8/os.py", line 675, in __getitem__ raise KeyError(key) from None KeyError: 'DISCORD_BOT_TOKEN'
試したこと
runtime.txtはもともと、3.7.6が記述されていたので3.8.5に変更した。
bot.pyにパスが通っていないのかなと考えたため、公式リファレンス等より、Procfileを上記のように変更したが、変化がなかった。(こちらの記事を参考にした。)
また、エラーコードを検索したが、解決に結びつくものを見つけられなかった。
最後に
足りない情報等あれば、教えて下さい。適宜追加します。
よろしくおねがいします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。