Shotstars for GNU/Linux.
⋮ Примечание автора: идея создания ПО, разработка была реализована на IT-конкурсе портала «Codeby», автор-разработчик попал в призовые.
Звёзды решают
Предназначение инструмента «Shotstars» — находить аккаунты, с которых когда-то ставили звезды репозиториям, но затем их снимали и предоставлять такой анализ/статистику в человекочитаемом виде (неважно, можно сканировать и свои и чужие проекты), по итогу пытаться делать то, что не делает Github по умолчанию (Штатные возможности GitHub не предоставляют пользователям информацию по убывающим «звёздам» в проекте и позволяют получить сведения только по их прибавлению). Второстепенная функция ПО — следить за накидываемыми звездами
HTML-репорт.
Работа «Shotstars» опубликована под свободной GPLv3 лицензией и рассчитана парсить небольшие или средние проекты до 6000 звезд. ПО не требует регистрации, авторизации, токена Github-аккаунта.
Shotstars поддерживает имитацию результатов, задокументированный хак ПО — или побочная функция, призванная проверить работу ПО на мертвых/стабильных репозиториях без движения звезд.
Журнал изменений Shotstars v0.2:
— Установить пакет Shotstars теперь можно и с помощью pip: pip install shotstars. Также подготовлены готовые сборки не требующие наличие Python в OS.
— Работа ПО ускорена в несколько раз за счёт распараллеливания задач.
— В html-отчет добавлена расширенная метрика: накопление «New_Gone_Stars/Dates» за все время сканирований.
— Изменен внешний вид CLI-таблиц. Обновлена функция прогресса. К расчетному времени снятия блокировки Github/API добавлено и оставшееся время ожидания в минутах. Переработан внешний вид html-отчета.
— Расширенны проверки/оповещения на ошибки, например, если пользователь указал несуществующий или удаленный репозиторий для парсинга или пытался просканировать проект с более чем 6К+ звездами и т.д.
— Добавлен новый функционал в html-отчет: отображение аккумулированных данных по всем периодам сканирований с разбивкой по датам; суммарный расчет «new/gone stars/date» в заголовке; а также ведется подсчет дубликатов «username’s», которые неоднократно ставили или снимали звезды в отслеживаемом репозитории.
— Добавлена новая метрика: реальная дата создания проекта (дату создания Github-репозитория легко можно подделать с помощью коммитов, обманывая пользователей, Shotstars — не обмануть). В html-отчет также добавлены: рейтинг; реальная дата создания проекта и описание проекта (если присутствует).
— Добавлен рандомный «User-Agent» для http запросов.
— В случае использования старой версии Python3.7 на OS Android/Termux или из-за ограничений новых версий OS Android шустрые процессы сменяются на безопасные потоки не вызывая ошибки.
Shotstars for Windows.Реалистичный пример обнаружение связей мультиаккаунтовПример работы ПО: вычисление, связь мультиаккаунта. Пользователь Github под ником ‘GameOneYT’ снес свой аккаунт, но поздно обфусцировать личность, он был замечен инструментом Shotstars. Нередкое явление, кстати.Еще пример. И здесь сложно не увидеть связь мультиаккаунта.
Видно, что за ~месяц набежало 57 звезд у скан. репозитория, этот предварительный вывод/расчет также может оказаться полезным, например, стоят ли усилия затраченные на рекламу/маркетинг/тех.pr проекта или нет.
Работает из коробки
Зарелизены готовые сборки, не требующие наличия в системе зависимостей или Python, доступны для OS GNU/Linux, Windows и Android (Termux), т.е. скачал, нажал, запустил, всё. А интерфейс ПО настолько простой и требует лишь указания в качестве цели «url-репозитория». Проще говоря, любая домохозяйка сможет воспользоваться ПО, но этой категории граждан вряд ли подобный софт когда-либо потребуется…
Забрать инструмент.
P.S. Читатели/пользователи ПО могут поблагодарить автора разными способами.
Источник: habr.com