Skip to content

serg-fam/telegram-grabber

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram Grabber

Бот копирует новые посты из указанных каналов в канал модерации, в канале модерации вы выбираете, какой пост отправить в ваш основной канал.


Инструкция перед запуском

Шаг 1: Создание базы данных

  1. Создать базу данных с названием "bd.db" в корневом каталоге проекта.
  2. В базе данных автоматически создается таблица "DataBase" со столбцами "username" и "message_id".
  3. В базе данных автоматически создается таблица "config" со столбцами "donor", "moder", "channel".
    • В таблицу "DataBase" записывается информация о скопированных постах. (Не редактировать);
    • В таблицу "config" добавляются и удаляются каналы откуда копировать посты (донор), на какой канал копировать (модератор) и на какой канал публиковать посты.

Шаг 2: Создание ботов

  1. Зарегистрировать приложение на https://my.telegram.org/apps , получить api id и api hash.
  2. Создать канал, в который будут копироваться все новые посты. (важно канал сделать открытым)
  3. Создать основной канал, в который будут публиковаться посты, выбранные из первого канала.
  4. Создать бота, сохранить токен. (Бот добавляет/удаляет в базе донора, модератора и основной канал).

Шаг 3: Переменные виртуального окружения

1. API_ID="Вставить из шага 2.1"
2. API_HASH="Вставить из шага 2.1"
3. TOKEN="Вставить из шага 2.4"
4. USER_ID="Получить используя бот @userinfobot"

Требования

Pyrogram==1.0.7
aiogram==2.12.1

Запуск

Запуск на Linux

cd python_bot/
    В первый раз нужно запустить бота и подтвердить вход номером телефона, поэтому:
    python3 bot_grabber.py
    Ввести номер телефона и код подтверждения
    ctrl + c
nohup python3 -u ./bot_grabber.py &
cd ..
cd restart_bot/
nohup python3 -u ./bot_restart.py &

Как пользоваться

Добавьте вашего бота в канал модерации и основной канал, сделайте его админом. Когда в каналах появляется пост, он копируется в канал модер с присвоением ID. Для того, что бы отправить пост в основной канал нужно отправить в ответ ID поста.

PS на канал нужно быть подписанным.

Управление БД через Telegram

Используя бот из шага 2.4 есть возможность вносить изменения в базу по каналам донорам, модерации и основного канала, с помощью всплывающей клавиатуры. Для добавления каналов вставляете ссылку на канал, к примеру просто durov

Нажать Донор -> ввести название -> выбрать Добавить или Удалить
Нажать Модер -> ввести название -> выбрать Добавить или Удалить
Нажать Канал -> ввести название -> выбрать Добавить или Удалить

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%