telegrambot

1

Описание

Этот бот парсит список статей с сайтов в телеграм канал по команде "новости". Бот выгружает в телеграм канал заголовок и ссылку на статью с сайта. Парсинг осуществляется постоянно, пока бот в работе. Инструкция по установке и использованию находится в файле README.md

Языки

  • Python100%
2 года назад
2 года назад
README.md

Установка и настройка

Данный Telegram-бот написан на языке Python и использует следующие библиотеки:

  • telebot: для взаимодействия с Telegram Bot API
  • requests: для выполнения HTTP-запросов
  • BeautifulSoup: для парсинга HTML-страниц

Для работы бота необходимо выполнить следующие шаги:

Linux

  1. Создайте папку для размещения файлов бота (допустим telegramBot) и активируйте виртуальное окружение в этой папке:

  2. Установите необходимые библиотеки:

  3. Разместите папку с файлом бота в папке с виртуальным окружением

  4. Перейдите в папку с ботом:

  5. Запустите бота:

Windows

  1. Создайте папку для размещения файлов бота (допустим telegramBot) и активируйте виртуальное окружение в этой папке:

  2. Установите необходимые библиотеки:

  3. Разместите папку с файлом бота в папке с виртуальным окружением

  4. Перейдите в папку с ботом:

  5. Запустите бота:

Настройка

  1. Замените token и channel_id в файле bot/Bot.py на ваши собственные значения.
  2. Заполните значение на своё:
    • url = "ссылка на сайт со списком статей";
    • post_elements = soup.find_all("название тега контейнера карточки", class_="его класс");
    • post_url_element = post_element.select_one("селектор ссылки на статью");
    • post_url = "ссылка на сайт со списком статей" + post_url_element["href"];
    • title_element = post_element.select_one("селектор заголовка статьи")
  3. Убедитесь, что ваш Telegram-канал может принимать сообщения от бота.

Запуск бота

Для запуска бота выполните следующую команду в активированном виртуальном окружении:

Бот будет ожидать команду "новости" от пользователей, после чего начнет парсить последнюю статью и отправлять ее в указанный Telegram-канал.

Использование

Чтобы использовать бота, отправьте ему сообщение "новости". Бот будет периодически проверять наличие новых статей и отправлять их в указанный Telegram-канал.

Логирование

Бот использует модуль logging для вывода информационных и отладочных сообщений. Логи сохраняются в консоли.

Остановка бота

Вы можете остановить бота, нажав Ctrl+C в консоли или терминале, где запущен бот.

Дополнительная информация

  • Файл с кодом бота находится в папке bot/Bot.py.
  • Бот использует глобальные переменные last_post_url для хранения информации о последней отправленной статье.
  • Функция signal_handler обрабатывает сигнал Ctrl+C для корректного завершения работы бота.