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)