Почему не работает бот ? В самом Python ошибку не отображает
Код запускается но отклика у самого бота нет.
import telebot
from telebot import types
bot = telebot.TeleBot('ss')
@bot.message_handler(commands=['start'])
def welcome (message):
# keyboard
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton("Music1")
item2 = types.KeyboardButton("Music2")
item3 = types.KeyboardButton("Music3")
markup.add ("item1")
markup.add ("item2")
markup.add ("item3")
bot.send_message(message.chat.id,"qq1".format(message.from_user, bot.get_me()),
reply_markup=markup)
@bot.message_handler(commands=['text'])
def send_audio(user_id):
if message.chat.type == 'private':
if message.text == 'Music1':
audio = open(r'C:/Users/artsa/Downloads/qq1.mp3', 'rb')
bot.send_audio(chat.id, audio)
elif message.text == 'Music2':
audio = open(r'C:/Users/artsa/Downloads/qq2.mp3', 'rb')
bot.send_audio(chat.id, audio)
elif message.text == 'Music3':
audio = open(r'C:/Users/artsa/Downloads/qq3.mp3', 'rb')
bot.send_audio(chat.id, audio)
else:
bot.send_message(message.chat.id, 'zaebalo')
bot.polling(none_stop=True,)
Ответы (1 шт):
Автор решения: Сёгун Райдэн
→ Ссылка
Отступ в bot.polling(none_stop=True,) неправильно поставлен. Если исправите, то он заработает. А так он находится в ветвлении if-elif-else, поэтому код не работает
@bot.message_handler(commands=['text'])
def send_audio(user_id):
if message.chat.type == 'private':
if message.text == 'Music1':
audio = open(r'C:/Users/artsa/Downloads/qq1.mp3', 'rb')
bot.send_audio(chat.id, audio)
elif message.text == 'Music2':
audio = open(r'C:/Users/artsa/Downloads/qq2.mp3', 'rb')
bot.send_audio(chat.id, audio)
elif message.text == 'Music3':
audio = open(r'C:/Users/artsa/Downloads/qq3.mp3', 'rb')
bot.send_audio(chat.id, audio)
else:
bot.send_message(message.chat.id, 'zaebalo')
bot.polling(none_stop=True)