Skip to content

Nilumilak/tg_stat_fuxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages