Подскажите,почему не работает Бот
Код:
import telebot
bot = telebot.TeleBot('Мой токен',parse_mode=None)
bot.set_webhook()
@bot.message_handler(commands=['start'])
def start(message):
mess=f'Hi,<b>{message.from_user.first_name} <u> {message.from_user.last_name}</u>.
</b>'
bot.send_message(message.chat.id,mess,parse_mode='html')
@bot.message_handler(content_types=['text'])
def get_user_text(message):
if message.text=='Hello':
bot.send_message(message.chat.id,'hiii',parse_mode='html')
elif message.text=='Id':
bot.send_message(message.chat.id,f'Your Id:{message.from_user.id}',parse_mode='html')
else:
bot.send_message(message.chat.id,'i dont undrstand u',parse_mode='html')
bot.polling(none_stop=True)
Ответы (1 шт):
Ваш код должен работать, если вы запустите его с действительным токеном бота, полученным от BotFather в Telegram. Однако, если вы хотите, чтобы ваш бот был в состоянии обрабатывать команды без учета регистра, вы можете привести полученный текст к нижнему регистру. Ниже приведена обновленная версия вашего кода:
import telebot
bot=telebot.TeleBot('Мой токен', parse_mode=None)
@bot.message_handler(commands=['start'])
def start(message):
mess = f'Hi,<b>{message.from_user.first_name} <u>{message.from_user.last_name}</u>.</b>'
bot.send_message(message.chat.id, mess, parse_mode='html')
@bot.message_handler(content_types=['text'])
def get_user_text(message):
text = message.text.lower() # convert the text to lowercase
if text == 'hello':
bot.send_message(message.chat.id,'hiii', parse_mode='html')
elif text == 'id':
bot.send_message(message.chat.id, f'Your Id: {message.from_user.id}', parse_mode='html')
else:
bot.send_message(message.chat.id,'i dont understand u', parse_mode='html')
bot.polling(none_stop=True)
Пожалуйста, обратите внимание, что в вашем коде присутствует bot.set_webhook(), но вы ничего не передаете этому методу. Этот метод используется для установки webhook'а, но вы используете bot.polling(), что является другим подходом для приема сообщений от бота. Вы должны выбрать один из этих методов (webhook или polling), оба они вместе использоваться не могут. Если вы хотите использовать polling, просто уберите строку bot.set_webhook().