• Рассылка сообщений с помощью библиотеки pyTelegramBotAPI?

    Vindicar
    @Vindicar
    RTFM!
    Если не понимаешь, Как применять try-except - откладываешь бота и практикуешься с try-except, пока не поймешь. Вообще боты - это НЕ просто, и я настоятельно советую отложить бота, пока не ознакомишься с языком получше.

    Ты не привёл полный стек-трейс ошибки. Его нужно приводить, и не скриншотом, а обернуть тегом <code>. Кнопка </> в редакторе в помощь.
    То же самое нужно сделать с кодом - иначе вопрос могут снести как не соответствующий правилам сайта.
    На вопрос с нечитаемым кодом получить полезный ответ удаётся не всегда, так что это в твоих же интересах.

    Когда приведёшь полный stack trace ошибки (это набор строк вида "File путь_к_файлу, line номер_строки, in имя_функции" - найди в нём те блоки, которые упоминают файлы из твоего проекта. Они подскажут, в какой части кода возникает ошибка.

    Но можно догадаться, если просто рассуждать логически. Ошибка возникает из-за того, что ты отправляешь сообщение пользователю, который заблокировал твоего бота. Значит, ловить ошибку нужно в районе вызова метода бота, который выполняет отправку сообщения, т.е. send_message(). Так что ты вроде правильно идентифицировал строку. Если ошибка всё равно возникает, убедись, что ты запускаешь тот же код, который привёл тут.

    Но except: pass - это плохая практика в большинстве случаев. От того, что ты игнорируешь ошибку, она не исчезает. Ты по-хорошему должен удалить id этого пользователя из списка id подписчиков.

    И да, ты отвратительно работаешь со списком id. Это в принципе работает, но это очень неудобно. Ты это почувствуешь, как только попытаешься хранить какую-либо информацию кроме id пользователя.
    Ответ написан
    4 комментария