Telegram Grabber
Телеграм Граббер
Бот позволяет пересылать весь контент с любого telegram канала (если админ канала не запретил копирование контента) на ваш канал без упоминания автора канала. Также есть возможность заменить все ссылки и упоминания в постах на ваши
Используемые библиотеки
Для работы бота необходимо установить библиотеки.
Python:
sudo apt-get update
sudo apt-get install python3
Библиотека aiogram:
pip install aiogram
Библиотека telethon:
pip install telethon
Библиотека pickle:
pip install pickle
Библиотека re:
pip install re
Как запустить
- Создать телеграм-бота. Для этого нужно написать боту https://telegram.me/botfather и следовать инструкциям. После этого сохраните токен бота.
- Получить api_id, api_hash. Сделать это можно на сайте my.telegram.org.
Инструкция:
- Задать переменные api_id, api_hash и bot_token в файле main.py.
Запустить бота командой:
python main.py
При первом запуске нужно ввести номер телефона и код, который придёт в telegram
Пример использования:
- Переходим в telegram бот, который создали в начале и добавляем id каналов, с которых нужно брать контент командой /add_channel (/add_channel -2312312312). id нужного канала можно узнать переслав любое сообщение с канала в бот https://t.me/getmyid_bot
- Добавить канал, на который должны будут приходить сообщения командой /add_destination_channel (/add_destination_channel -321312311). Бот, который вы создали в начале обязательно должен быть администратором этого канала.
- Указать соответсвие между каналами написав id канала-источника и id канала-получателя через пробел командой /set_channel_mapping (/set_channel_mapping -100123132890 -1000932314321). Теперь все новые сообщения, которые будут публиковать будут приходить на ваш канал.
- Также вам доступна команда
/last_messages ко-во сообщений или all, если все
Она отправляет последние сообщения на ваш канал. Если добавили несколько каналов-источников, а последние сообщения нужны только с одного канала, то напишите
/last_messages id канала источника ко-во сообщений
Также есть возможность заменять все ссылки и упоминания, которые публикуются на каналах на ваши. В поиске редактора кода найдите все упоминания "test" и вставь нужное вам:
Тоже самое со ссылкой:
Список доступных команд:
- /start - Начало работы с ботом
- /help - Получить список доступных команд
- /add_channel - Добавить канал для работы
- /remove_channel - Удалить канал из списка
- /list_channels - Показать список добавленных каналов
- /add_destination_channel - Добавить канал-получатель
- /remove_destination_channel - Удалить канал-получатель из списка
- /list_destination_channels - Показать список каналов-получателей
- /set_channel_mapping - Установить соответствие между каналами
- /last_messages (ко-во сообщений или all, если все) - Отправить последние сообщения с каналов
Списки идентификаторов каналов хранятся в файле *.pickle для сохранения настроек после перезапуска бота.
Ссылка на GitHub:
https://github.com/WALTERXO/telegram-grabber GitHub - WALTERXO/telegram-grabber: Бот позволяет пересылать весь контент с любого telegra