首先,抱歉,如果这是重复的,我搜索过,找到了一些修复程序,但我很笨,无法应用。 我不是开发人员、程序员,只是想运行一个执行某些操作的 python 脚本。我对 python 有基本的了解,所以跟我说话就像我很笨。
这些是使机器人运行的依赖项。运行 python3 bot.py 运行正常,但我需要一些东西在程序死机时重新启动程序,而 pm2 对于像我这样的白痴来说似乎很容易。
import discord
import asyncio
import datetime
import os
import json
import requests
from coinmarketcap import Market
from steem import Steem
from steem.post import Post
from steem.blog import Blog
from steem.instance import set_shared_steemd_instance
from steem.account import Account
from steem.steemd import Steemd
from discord.ext.commands import Bot
from discord.ext import commands
当我运行 pm2 start bot.py
这就是我得到的
pm2 ls
┌──────┬──────┬──────────┬────┬──────┬────────┐
│名称│模式│状态│↺│cpu│内存│
├──────┼──────┼────────┼──────┼──────┼────────┤
│ 机器人 │ fork │ 错误 │ 15 │ 0% │ 0 B
我读过 pm2 应该识别 .py 并运行脚本,那么为什么它不能像预期的那样工作?
pm2 -v
2.10.1
运行 ubuntu 16.04 LTS
最佳答案
由于我还没有真正看到我对这个问题的解决方案,也没有经过验证的解决方案,所以我会给出我的。希望对您有所帮助!
虽然 pm2 确实是为 Node.js 制作的,但它可以运行 Python 脚本。我已经做了一段时间了,还不错!
我还读到 pm2 应该自动检测文件中的 .py
,但根据我的经验,它在检测 python3 方面做得不好。指定要使用的解释器对我的情况有帮助。
您可以通过添加以下参数来执行此操作:--interpreter python3
。
因此,在您的情况下,完整命令将是 pm2 start bot.py --interpreter python3
。
关于python - 运行带有 pm2 错误的 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49109069/