1. Настройка логгера использует переменную name
, которая не определена. Это вызовет NameError
.
- Вам следует определить name = '__main__'
или напрямую использовать '__main__'
в getLogger()
.
2. Переменная no_images_message_sent
задается, но неправильно проверяется в функции post_image
.
- Она предназначена для предотвращения повторной отправки сообщений "No images", но логика реализована не совсем корректно. Оно отправляется только один раз и не сбрасывается в False
после добавления новых изображений в папку.
3. При создании задания (job = scheduler.add_job(post_image, 'interval', minutes=60)
) нет проверки на существование задания. Если этот код выполнится более одного раза, будут запланированы множественные задания, что может привести к непредвиденному поведению.
4. Главный условный блок должен быть if __name__ == '__main__':
, а не if name == 'main':
.
5. Функция handle_photos
предполагает, что любое полученное фото следует сохранять. Это может быть не всегда желаемым поведением для каждого полученного ботом фотосообщения, в зависимости от задуманных функций бота.
6. В функции set_interval
отсутствует обработка ошибок на случай, если введенная строка не может быть преобразована в целое число.
7. Функция post_image
открывает файлы с помощью open
, но лучше модифицировать её для использования aiofiles
для неблокирующего ввода-вывода файлов в асинхронной среде.
8. asyncio.sleep
используется для экспоненциального отступа при ошибках, что хорошо, но последующие инструкции continue
лишние, так как после них в своих блоках ничего не следует.