我使用 python 创建了一个不和谐机器人,但问题是当我停止 PyCharm 进程时机器人不再工作。我需要一些帮助谢谢。
这是代码的一部分:
import discord
client = discord.Client()
@client.event
async def on_message(message):
id = client.get_guild(id)
if message.content.find("!about") != -1:
await message.channel.send( "Hello, my name it is Py-Boot i am a beta version created by @Marin#2404, am not fully functionaly and Hello ")
elif message.content == "!Users":
await message.channel.send(f""" List of members: {id.member_count} """)
client.run('token')
答案 0 :(得分:0)
如果你停止 Pycharm。然后机器人将停止运行。查看 crontab 来临时运行您的机器人,或者如果您希望它永远运行并始终可用,则使用某种形式的托管。否则,您需要手动保持进程运行。
答案 1 :(得分:0)
从技术上讲,您可以通过将 UptimeRobot 与 repl.it 一起使用,让您的机器人 24/7 全天候免费运行,我也是 discord.py 场景的新手,但我已经设法实现了这一点
https://www.youtube.com/watch?v=SPTfmiYiuok
这是一个快速教程的链接,但这里有一个粗略的解释
转到 UptimeRobot 并创建一个帐户,然后使用您的 discord.py 链接(repl 链接)添加一个新监视器,然后该网站将每 5 分钟 ping 您的代码,这将使您的机器人无法休眠
还要在您的 discord.py 文件旁边创建一个名为 keep_alive
的新 .py 文件并将此代码复制到
from flask import Flask
from threading import Thread
app = Flask('')
@app.route('/')
def home():
return "Hello. I am alive!"
def run():
app.run(host='0.0.0.0',port=8080)
def keep_alive():
t = Thread(target=run)
t.start()
然后将文件名导入主discord.py文件
from keep_alive import keep_alive
我很确定你不能在 pycharm 中做到这一点,因为它不能被任何东西“ping”,所以当你关闭你的电脑时它会关闭。但是很容易将您的代码转移到 repl.it,因为它只是一个复制粘贴。