Como fazer um bot no Telegram usando Python
1. Criando um bot
Para criar um bot, você precisa falar com o BotFather. Ele é um bot que vai te ajudar a criar um bot. Para isso, você precisa enviar a mensagem /newbot
para ele. Ele vai te pedir um nome para o bot e um username. O username deve terminar com bot
. Por exemplo, @meubot
. Obs: O username deve ser único e sempre tem que terminar com bot
.
2. Pegando o token do bot
Depois de criar o bot, o BotFather vai te enviar um token. Esse token é a chave para você acessar a API do Telegram. Ele vai ser usado para fazer as requisições para o Telegram. Esse token é um segredo, então não compartilhe ele com ninguém.
3. Instalando a biblioteca pyTelegramBotAPI
Para fazer as requisições para o Telegram, você vai usar a biblioteca pyTelegramBotAPI que pode ser instalada usando o pip: pip install pyTelegramBotAPI
.
4. Criando o bot
Para criar o bot, você precisa criar um arquivo chamado bot.py
, ou o nome que preferir e colocar o seguinte código:
import telebot
bot = telebot.TeleBot(chaveAPI)
@bot.message_handler(commands=['start'])
def send_welcome(message):
bot.reply_to(message, "Olá, eu sou um bot!")
bot.polling()
5. Rodando o bot
Para rodar o bot, você precisa abrir o terminal e digitar o seguinte comando: python bot.py
. Se tudo der certo, você vai ver uma mensagem no terminal dizendo que o bot está rodando.
6. Testando o bot
Para testar o bot, você precisa abrir o Telegram e enviar uma mensagem para o bot. Se tudo der certo, você vai ver uma mensagem de boas vindas.
7. Enviando mensagens
Para enviar mensagens, você precisa usar o método send_message
. Por exemplo, para enviar uma mensagem para o usuário que enviou a mensagem, você pode usar o seguinte código:
bot.send_message(message.chat.id, "Olá, eu sou um bot!")
8. Enviando mensagens com botões
Para enviar mensagens com botões, você precisa usar o método send_message
e passar o parâmetro reply_markup
. Por exemplo, para enviar uma mensagem com um botão, você pode usar o seguinte código:
markup = types.ReplyKeyboardMarkup(row_width=2)
itembtn1 = types.KeyboardButton('Um botão')
itembtn2 = types.KeyboardButton('Outro botão')
markup.add(itembtn1, itembtn2)
bot.send_message(message.chat.id, "Olá, eu sou um bot!", reply_markup=markup)
9. Enviando mensagens com botões e opções
Para enviar mensagens com botões e opções, você precisa usar o método send_message
e passar o parâmetro reply_markup
. Por exemplo, para enviar uma mensagem com um botão, você pode usar o seguinte código:
markup = types.ReplyKeyboardMarkup(row_width=2, resize_keyboard=True, one_time_keyboard=True)
itembtn1 = types.KeyboardButton('Um botão')
itembtn2 = types.KeyboardButton('Outro botão')
markup.add(itembtn1, itembtn2)
bot.send_message(message.chat.id, "Olá, eu sou um bot!", reply_markup=markup)