Олександр Сербинов, datetime.datetime.now() вернет текущее время без цикла. время отправки сообщения находится в message.date. Зачем там цикл while true? По каким примерам этот код был сделан? Мне кажется вы все оооочень сильно усложнили, не понимая как работает aiogram
я бы на вашем месте перечитал что вы написали, понял бы что ничего не ясно и расписал бы более понятным языком и более подробно. Сама тема вопроса не стыкуется с описанием.
И вообще очень странная структура приложения. Зачем там бесконечный цикл? Вы откуда пример брали?
А точно это то место, где происходит ошибка? Попробуйте полный код выложить. Если очень большой, то в спойлер загоните. Плюс понять бы что у вас в bookmarks_categories лежит.
Пару замечаний не по теме:
вывод кнопок у вас в 2 колонки
Все это можно описать циклом for буквально в 2 строки.
UPD
callback_data должна быть строкой, а не числом
Вообще это уже другой вопрос, который требует отдельного поста.
В этой библиотеке никак.
Можете попробовать aiogram, она асинхронная, чуть сложнее в освоении, но все же мощнее. Вот там уже можно будет что-то придумать.
Сделать бота администратором канала.
При появлении нового сообщения редактировать его, добавляя нужную кнопку.
Либо сразу же добавлять новые посты через бота с уже готовым набором кнопок.
AniArim, ну вообще это из области статистики.
Тот случай когда нельзя брать среднее значение, т.к. есть значения сильно выбивающиеся из общей массы.
Очень похоже на подсчет средней зарплаты в городах, когда разрыв между бедными и богатыми очень большой.
Одни едят капусту, другие мясо. В среднем все едят голубцы.
Это неправильный вариант подсчета.