@bot.message_handler(func=lambda x:x.text=='Рассылка')
def rassylka(message):
global admin_id
if message.from_user.id==admin_id:
sent = bot.send_message(message.chat.id, 'Введите сообщение для рассылки.')
bot.register_next_step_handler(sent, hello)
def hello(message):
message_to_save = message.text
con = sqlite3.connect('users.db')
cur = con.cursor()
cur.execute("SELECT rid FROM users WHERE rid = 1")
res = cur.fetchall()
recs = repr(res).count('1') - 1
if recs >= 0:
i = 0
while i <= recs:
try:
cur.execute("SELECT id FROM users")
res = cur.fetchall()[i][0]
bot.send_message(res, message.text)
i += 1
except:
print(i)
break
i+=1
while i <= recs:
cur.execute("SELECT id FROM users")
res = cur.fetchall()[i][0]
bot.send_message(res, message.text)
Туплю с рассылкой сообщений через бота в тг, библиотека если что телебот. Вкратце объясню, что за шлак в коде и в чём проблема... С базы данных я получаю количество пользователей и если больше или равно 0, то запускается цикл отправки сообщений на айди пользователей, но на случай того, что пользователь заблокировал бота или просто нету возможности отправить сообщение тому пользователь, я добавил исключение, то есть try, если всё хорошо, то просто отправляется, если в отправке сообщения произошла ошибка, то цикл прекращается, к переменной i добавляется 1, что-бы перейти на следующего юзера и должен запустится новый цикл, но не получается