При регистрации пользователя TG bot выдает ошибку
import telebot
import sqlite3
bot = telebot.TeleBot('BOT_TOKEN')
name = None
@bot.message_handler(commands=["start"])
def start(message):
conn = sqlite3.connect("baza.sql")
cur = conn.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS users (id int auto_increment primary key, name varchar(50), pass varchar(50)) ')
conn.commit()
cur.close()
conn.close()
bot.send_message(message.chat.id, 'Привет сейчас тебя зарегистрируем! Введите своё имя')
bot.register_message_handler(message, user_name)
def user_name(message):
global name
name = message.text.strip()
bot.send_message(message.chat.id, 'Введите пароль')
bot.register_next_step_handler(message, user_pass)
def user_pass(message):
password = message.text.strip()
conn = sqlite3.connect("baza.sql")
cur = conn.cursor()
cur.execute("INSERT INTO users (name, pass) VALUES ('%s', '%s')" % (name, password))
conn.commit()
cur.close()
conn.close()
markup = telebot.types.InlineKeyboardMarkup()
markup.add(telebot.types.InlineKeyboardButton('Список пользователей', callback_data="users"))
bot.send_message(message.chat.id, 'Регистрация прошла успешно!', reply_markup=markup)
# bot.send_message(message.chat.id, 'Введите пароль')
# bot.register_next_step_handler(message, user_pass)
bot.polling(none_stop = True)
Ошибка:
> C:\Users\PC\AppData\Local\Programs\Python\Python312\python.exe \
> C:\PhytonProjects\python_beginners_course-main\pythonProject\.idea\Testobot1488.py \
> Traceback (most recent call last):
> File "C:\PhytonProjects\python_beginners_course-main\pythonProject\.idea\Testobot1488.py", line 43, in <module>
bot.polling(none_stop = True)
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 1104, in polling
self.__threaded_polling(non_stop=non_stop, interval=interval, timeout=timeout, long_polling_timeout=long_polling_timeout,
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 1179, in __threaded_polling
raise e
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 1141, in __threaded_polling
self.worker_pool.raise_exceptions()
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\util.py", line 149, in raise_exceptions
raise self.exception_info
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\util.py", line 92, in run
task(*args, **kwargs)
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 7846, in _run_middlewares_and_handler
if self._test_message_handler(handler, message):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 7775, in _test_message_handler
if not self._test_filter(message_filter, filter_value, message):
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\PC\AppData\Local\Programs\Python\Python312\Lib\site-packages\telebot\__init__.py", line 7791, in _test_filter
return message.content_type in filter_value
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\
> TypeError: argument of type 'function' is not iterable