telebot Проверка правильности ввода капчи
Делаю бота с капчей на телеграм. Никак не могу реализовать алгоритм проверки правильности ввода.
Есть база капчи в папке, у которой название файла(filename) совпадает с самой капчей. Мне нужно сравнивать отправленное сообщение с filename. Через некст степ можно передать только параметр мессадж.
Как это привести в человеческий вид и заставить работать. Данный алгоритм работает некорректно.
@bot.message_handler(regexp=('???Начать зарабатывать')) #обрабатывает нажатие кнопки
def zarab(message):
markup = types.ReplyKeyboardMarkup(True)
markup.row('◀️ Главное меню')
bot.send_message(message.chat.id, 'Go', reply_markup=markup)
capcha(message)
def capcha(message): #присылает картинку с капчей
global filename
filename = random.choice(os.listdir("samples/"))
captchaimg = open('samples/'+filename, 'rb')
bot.send_photo(message.chat.id, captchaimg)
capchas(message,filename)
def capchas(message, filename): #обрабатывает полученное сообщение-ответ на капчу
if message.text == '◀️ Главное меню':
glavnoeMenu(message)
else:
if message.text in filename:
bot.register_next_step_handler(message, right)
else:
bot.register_next_step_handler(message, wrong)
def right(message):
bot.send_message(message.chat.id, 'Красава')
capcha(message)
def wrong(message):
bot.send_message(message.chat.id, 'Неправильно, давай другую')
capcha(message)