首页 > 解决方案 > 在 repl.it 上保持 Discord Bot 在线

问题描述

我如何使用repl.it我的 Python Discord Bot,并让它 24/7 全天候运行。我曾经使用过,keep_alive但由于某种原因它停止工作。

有没有人有什么建议?

我在控制台中不断收到此错误:

172.18.0.1 - - [16/Feb/2019 11:25:10] “GET / HTTP/1.1” 200 -

标签: pythondiscordkeep-alive

解决方案


要让您的 repl.it 机器人 24/7 在线,您必须做 3 件事:

  1. 保持机器人活着
  2. 添加后台任务
  3. 将您的 repl.it 机器人与 uptime 机器人链接

1. 为了让我们的机器人保持活力,我们必须在 py 文件的头部添加以下代码:

from flask import Flask
from threading import Thread

app = Flask('')

@app.route('/')
def main():
  return "Your Bot Is Ready"

def run():
  app.run(host="0.0.0.0", port=8000)

def keep_alive():
  server = Thread(target=run)
  server.start()

2.添加后台任务:

status = cycle(['with Python','JetHub'])

@bot.event
async def on_ready():
  change_status.start()
  print("Your bot is ready")

@tasks.loop(seconds=10)
async def change_status():
  await bot.change_presence(activity=discord.Game(next(status)))

3. 设置Uptime 机器人

  • 在正常运行时间机器人上创建一个帐户。
  • 创建帐户后,转到仪表板并单击添加新监视器(预习)
  • 选择监视器类型 Http(s)(预习)
  • 然后转到 repl.it 上的你的项目并从控制台顶部复制 url 并将其粘贴到监视器的 url 部分(预习)
  • 现在将监控间隔设置为每 5 分钟一次(以便它每 5 分钟 ping 一次机器人)并单击两次创建监视器(预习)
  • 就是这样......现在去你的 repl.it 上的项目并点击运行按钮

如果您在 discord.js 中制作了您的不和谐机器人我写了一篇关于此的中型文章:免费在线托管不和谐机器人 24/7!


推荐阅读