我在heroku上托管的不和谐.py机器人不工作



我在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启动工人。

如果你在托管你的机器人方面有任何问题,请回复我的建议,我很乐意提供帮助。