Ten poradnik buduje bota w Pythonie z jedną komendą slash, /ping. Najpierw potrzebujesz aplikacji Discord i tokena bota: Jak stworzyć bota Discord i zdobyć jego token.
Pliki
requirements.txt
discord.py>=2.4
bot.py
import os
import discord
from discord import app_commands
intents = discord.Intents.default()
client = discord.Client(intents=intents)
tree = app_commands.CommandTree(client)
@tree.command(name="ping", description="Replies with pong")
async def ping(interaction: discord.Interaction):
await interaction.response.send_message("pong")
@client.event
async def on_ready():
await tree.sync()
print(f"Logged in as {client.user}")
client.run(os.environ["DISCORD_TOKEN"])
Bot używa domyślnych intentów, więc nie trzeba włączać żadnego uprzywilejowanego intenta.
Uruchom go w PlayNHost
- Otwórz serwer w panelu. Kliknij Zmień typ serwera na stronie Przegląd i wybierz Python Bot. Zrób to na nowym serwerze: zmiana typu instaluje go ponownie. Zobacz Jak zmienić typ serwera.
- W Files wgraj
bot.pyirequirements.txt. - W Ustawienia, Ustawienia gry ustaw Plik główny na
bot.pyi wklej token do pola Token bota Discord. - Otwórz Console i uruchom serwer. Serwer instaluje pakiety z
requirements.txtprzy każdym starcie. - Gdy konsola pokaże
Logged in as ..., wpisz/pingw Discordzie.
Warto wiedzieć
- Serwer domyślnie uruchamia Pythona 3.12. Jeśli pakiet wymaga innej wersji, wybierz 3.10, 3.11, 3.13 lub 3.14 w Ustawienia, Obraz Dockera.
- Komendy zarejestrowane przez
tree.sync()są globalne i mogą pojawiać się dłuższą chwilę. Podczas testów synchronizuj zamiast tego z jednym serwerem:tree.copy_global_to(guild=discord.Object(id=YOUR_SERVER_ID)), potemawait tree.sync(guild=...). - Czytaj błędy w Console. Brakujący pakiet oznacza, że w
requirements.txtbrakuje linii.
Więcej: Jak hostować bota Discord w Pythonie, Jak używać bazy danych z botem Discord.





