Как прекратить запуск процесса дискорд бот (python) - PullRequest
0 голосов
/ 19 марта 2020

Я новичок в этом discord.py. Я только что сделал бот discord.py, он работает нормально, но иногда бот постоянно повторяет командные сообщения. Я погуглил эту проблему и обнаружил, что, возможно, это для запуска сценария снова и снова (например, когда вы сохраняете и запускаете после редактирования или добавления функций). Поэтому я хочу прекратить запуск процесса, как и при перезапуске windows, бот отключен (если я запускаю скрипт после перезапуска windows, бот работает нормально). Пожалуйста, помогите

Если кому-то нужен код, я могу вставить его сюда.

PD: Я сделал бот точным, как учебник ...

Ответы [ 2 ]

0 голосов
/ 03 апреля 2020
  • Если вы добавите код, который я там записал (который может использовать только владелец), он отключит уже работающих ботов (запись / shutdown на сервере раздора или каким бы ни был ваш префикс).

Однако вам может потребоваться перезапуск P C после сохранения бота с этим кодом.

@client.command()
@commands.is_owner()
async def shutdown(ctx):
    await ctx.bot.logout()
  • Так что каждый раз если вы хотите отредактировать свою команду, вы пишете / закрываете и редактируете ее, после этого вы можете запустить ее снова.

Я надеюсь, что это сработает для вас и я смогу помочь.

0 голосов
/ 19 марта 2020

Это сообщение на самом деле не является discord.py, а c и применяется ко всем скриптам, которые работают неопределенно долго.

Вы запускаете несколько экземпляров своего бота. Если вы запускаете его в среде IDE, то где-то должна быть кнопка остановки. Если вы запускаете его в консоли, закрытие окна консоли закроет бота.

Редактировать: если вы запускаете его в sublime3, как подсказывают ваши теги, каждый раз, когда вы хотите закрыть своего бота, go для «Инструменты», а затем «Отменить сборку» (горячая клавиша: CTRL + Break). Как только вы запускаете другой экземпляр вашего бота, возвышенный «разъединяет» текущий скрипт в пользу нового, и этот метод больше не работает. Затем вам нужно вручную go просмотреть все запущенные процессы (командная строка или диспетчер задач) и выполнить поиск любых процессов "Python".

В общем, я рекомендую вместо этого запускать сценарий в командной строке, как у вас больше контроля над ним.

...