有一个 sqlite3 数据库,其中包含可以向机器人发送命令的用户列表。无法让它工作。来自任何用户的消息都会显示“访问受到限制”,即使该用户在数据库中也是如此。
import telebot
import sqlite3
bot = telebot.TeleBot('TOKEN')
con = sqlite3.connect('white_list.db')
cursor = con.cursor()
sql = "SELECT * FROM white_list WHERE users"
cursor.execute(sql)
user_name = cursor.fetchall()
@bot.message_handler(func=lambda message: message.chat.id not in user_name)
def access_msg(message):
bot.send_message(message.chat.id, 'Доступ ограничен')
仅当您强制它指向元素编号时才有效。
user_name = user_name[0]
换线试试
在
虽然不是很清楚为什么要调用这个变量 user_name 如果它是一个 ID 列表。