【发布时间】:2021-05-11 11:42:43
【问题描述】:
所以今天我正在测试一个排行榜命令,它对我有用,但是在将它托管到 herokou 之后它给了我这个错误:
2021-02-07T18:54:24.504724+00:00 heroku[worker.1]: State changed from crashed to starting
2021-02-07T18:54:27.000000+00:00 app[api]: Build succeeded
2021-02-07T18:54:27.747125+00:00 heroku[worker.1]: Starting process with command `python bot.py`
2021-02-07T18:54:28.379755+00:00 heroku[worker.1]: State changed from starting to up
2021-02-07T18:54:29.527430+00:00 app[worker.1]: File "<fstring>", line 1
2021-02-07T18:54:29.527452+00:00 app[worker.1]: ((await client.fetch_user(str(x[0]))).name)
2021-02-07T18:54:29.527458+00:00 app[worker.1]: ^
2021-02-07T18:54:29.527459+00:00 app[worker.1]: SyntaxError: invalid syntax
2021-02-07T18:54:29.574256+00:00 heroku[worker.1]: Process exited with status 1
2021-02-07T18:54:29.634600+00:00 heroku[worker.1]: State changed from up to crashed
对于 cotext,这里也是我的代码:
@client.command(aliases=['top'])
async def leaderboard(ctx):
conn = sqlite3.connect('db.db')
c = conn.cursor()
c.execute(f"SELECT id, bal FROM main ORDER BY bal DESC LIMIT 10")
result = c.fetchall()
embed = discord.Embed(title="Leaderboards", colour=discord.Colour(0x6790a7))
for i, x in enumerate(result, 1):
embed.add_field(name=f"#{i}", value=f"**{(await client.fetch_user(str(x[0]))).name}** - {str(x[1])}$", inline=False)
await ctx.send(embed=embed)
c.close()
conn.close()
当我尝试在我的电脑上运行我的机器人时,它工作正常,有什么想法吗?
【问题讨论】:
-
您的 requirements.txt 文件中列出了所有正确的库供 Heroku 下载吗?
-
@AdityaTomar 客户端方法需要要求吗?
-
好吧,不是特别是客户,而是 Discord 本身。在您的
requirements.txt文件中,根据运行代码所需的所有库,包括git+https://github.com/Rapptz/discord.py、PyNaCl==1.3.0、dnspython==1.16.0、pandas等。 -
@AdityaTomar 在我添加之前它运行良好
标签: python heroku discord discord.py