Мы с важной новостью: с 28 февраля 2025 года сервис Хабр Фриланс прекратит свою работу.

Купить услуги можно до 28 февраля 2025, но пополнить баланс уже нельзя. Если на вашем счете остались средства, вы можете потратить их на небольшие услуги — служба поддержки готова поделиться бонусами, на случай, если средств немного не хватает.
R50 519a70261649d6945ab5aac1ca93e79b
telegram, парсинг, sql

Разработка Telegram-бота для мониторинга и управления

Добавлено 29 дек 2024 в 07:36
Этот Telegram-бот предназначен для мониторинга и управления. Он интегрируется с Google Sheets для хранения и обновления информации о пользователях и их заказах. Бот использует Selenium для авторизации и парсинга данных с веб-сайта, а также библиотеку gspread для работы с Google Sheets. Вот основные функции и особенности бота:


Основные функции:

  1. Мониторинг :

    • Бот автоматически авторизуется на веб-сайте и парсит данные о доступных.
    • Отправляет уведомления пользователям о новых экскурсиях с кнопкой "Взять".


  2. Управление заказами :

    • Пользователи могут заказать, отменить её или уведомить о выполнении.
    • Администраторы получают уведомления о новых заказах и могут подтверждать их.


  3. Интеграция с Google Таблицами :

    • Бот обновляет Google Sheets с информацией о пользователях и их заказах.
    • Администраторы могут просматривать и управлять данными в Google Sheets.


  4. Команды для пользователей и администраторов :

    • /start: Начало работы с ботом и запуск мониторинга.
    • /info: Получение информации о текущих заказах пользователя.
    • /help: Информация о боте и контактные данные администратора.
    • /broadcast: Рассылка сообщений всем пользователям (только для администраторов).
    • /table: Ссылка на таблицу Google Sheets (только для администраторов).
    • /statistics: Статистика бота (только для администраторов).
    • /userstats: Статистика заказов пользователя.
    • /file: Отправка ссылок на документы и файлы.
    • /monitor: Ручной запуск мониторинга (только для администраторов).


Технические детали:

  • Авторизация и парсинг :

    • Используется Selenium для авторизации на веб-сайте и парсинга данных.
    • Поддерживаются две локации с разными учетными данными.


  • Google Таблицы :

    • Используется библиотека gspread для авторизации и работы с Google Sheets.
    • Данные о пользователях и их заказах хранятся в Google Sheets.


  • Авторизоваться :

    • Логирование действий и ошибок для отладки и мониторинга работы бота.


  • Асинхронность :

    • Используется asyncio для асинхронного выполнения задач, таких как отправка сообщений и мониторинг.


  • Планировщик :

    • Используется библиотека schedule для планирования регулярного мониторинга каждые 31 минуту.


Пример использования:

  1. Пользователь :

    • Начинает работу с ботом командой /start.
    • Получает уведомления.
    • Может отменить заказ или уведомить о выполнении.
    • Может просмотреть свои текущие заказы командой /info.


  2. Администратор :

    • Получает уведомления о новых заказах и может подтверждать их.
    • Может рассылать сообщения всем пользователям командой /broadcast.
    • Может просматривать таблицу Google Sheets командой /table.
    • Может получить статистику бота командой /statistics.
    • Может запустить мониторинг командой /monitor.


Этот бот предоставляет удобный интерфейс для управления и взаимодействия с пользователями, обеспечивая автоматизацию многих рутинных задач.
Ae9c0681c3