Skip to content

Latest commit

 

History

History
78 lines (46 loc) · 5.39 KB

README.MD

File metadata and controls

78 lines (46 loc) · 5.39 KB

Solid Grab&Top

logo

Описание

Solid Grab&Top (SGT) - это программа на языке Python, которая собирает сообщения из Телеграм канала или чата, готовит шаблон поста со статистикой по нескольким параметрам (таким как топ комментирующих пользователей, топ использованных слов, результаты викторин и многое другое) и отправляет его в выбранный диалог.

Внешний вид интерфейса:

image

Пример вывода результата:

image

Скрипт написан на языке Python 3 и использует несколько дополнительных модулей, таких как Telethon, Pyrogram, PIL, matplotlib, wordcloud, PyQt5, Pymorph2 и NLTK. SGT написан в ООП стиле группой студентов (команда Фуксий) в качестве нашего первого опыта как в командной работе, так и в работе с асинхронными библиотеками, причем и то и другое было достаточно серьезным испытанием :)

Сборка репозитория и локальный запуск

Выполните в консоли:

git clone https://github.com/obulygin/tg_stat_fuxy.git
pip install -r requirements.txt

Авторизация

Авторизационная информация хранится в файле settings.ini в следующем виде:

api_id = 
api_hash =
phone =

Инструкция по получению авторизационных данных и заполнению файла settings.ini.

  1. Перейдите по ссылке https://my.telegram.org/auth и введите номер телефона привязанный к вашему телеграм аккаунту (его же нужно будет прописать в 'phone' файла settings.ini).

  2. После подтверждения перейдите в 'API development tools'.

image

  1. Заполните поля 'App title' и 'Short name' (названия могут быть любыми).

image

  1. После заполнения и сохранения, в полях 'App api_id' и 'App api_hash' появятся данные, которые нужно скопировать в api_id и api_hash файла settings.ini соответственно.

image

Итоговый пример заполнения файла settings.ini:

api_id = 12345678
api_hash = 12qwer12345q12qw2we456r123q45r2w
phone = +12345678945

Вы можете открыть для заполнения файл settings.ini в любом редакторе (например, в Блокноте).

Запуск

Чтобы запустить программу, выполните в консоли:

python main.py

При первом запуске программа попросит ввести Ваш номер телефона, после чего Телеграм пришлет на него код-подтверждение, который также будет необходимо ввести. После этого в папке с программой будет создан файл с расширением .session и до тех пор, пока он будет находиться в папке, Вам больше не придется проходить процедуру авторизации.

Далее для работы с программой просто выберите необходимые пункты и нажмите на кнопку "Отправить статистику". После чего в Ваш диалог Избранное (Saved Messages) будет отправлен шаблон со статистикой, который Вы сможете при необходимости подкорректировать и переслать в Ваш чат или канал.

Добавление слов в поле "Исключаемые слова" будет исключать слова из подборки "Популярные слова".

Из поля "Список доступных масок" вы можете выбрать необходимую маску для "облака слов". Так же вы можете добавить свою собственную маску, для этого создайте шаблон в формате .png и поместите его в папку /img.