我在heroku上托管了我的discord.py机器人,构建成功,Deployed
该代码适用于我的VSC,但不适用于heroku
requirements.txt:
discord.py==1.3.4
PyNaCl==1.3.0
pandas
dnspython==1.16.0
async-timeout==3.0.1
程序文件:
worker: python bot.py
我不知道问题出在哪里
谁能告诉我该修改什么或哪里出了问题吗
我感谢你的帮助。
我做到了:
$ heroku logs --tail
我得到了:
2020-07-30T03:30:00.853064+00:00 app[worker.1]: File "bot.py", line 3, in <module>
2020-07-30T03:30:00.853284+00:00 app[worker.1]: import requests
2020-07-30T03:30:00.853316+00:00 app[worker.1]: ModuleNotFoundError: No module named 'requests'
2020-07-30T03:30:00.964329+00:00 heroku[worker.1]: Process exited with status 1
2020-07-30T03:30:01.011352+00:00 heroku[worker.1]: State changed from up to crashed
抱歉问了个愚蠢的问题。
要解决您的问题,听起来您需要将请求模块添加到requirements.txt中。要获得此模块,您可以在控制台中运行以下命令:
pip show requests
记下版本号,并将以下内容附加到requirements.txt文件中:
requests==x.y.z
其中x.y.z
替换为您使用pip show requests
获得的版本。
在Heroku上托管机器人的一般过程:
如果你想在Heroku上托管你的机器人,我采取的步骤是:
需求.txt
您可以通过在控制台中运行以下命令来获得此信息:
pip freeze > requirements.txt
这将为您将所有必需的Python模块及其各自的版本写入文件中。(这也应该找到并添加您丢失的"请求"模块(
Procfile
在这个文件中,您只需要:
worker: python bot.py
"pythonbot.py";是将在Heroku上运行以启动您的机器人的内容。尽管您做得很好。
Heroku资源
在Heroku网站上访问应用程序的仪表板。然后选择";资源";选项卡
接下来,应该有Procfile的内容。点击右手边的笔,启用开关以允许Heroku启动工人。
如果你在托管你的机器人方面有任何问题,请回复我的建议,我很乐意提供帮助。