Автор: izuverg
Кринжо-статистика
Хочу пожелать нашему любимому и уважаемому доктору ХероморусуХермоус Мора успехов на всех фронтах и тратить свое время на что-то более полезное чем ручная обработка постов из реактора.
Наговноклодил тут инструментик: https://github.com/worldscourage/joyreactor-tag-stats
Я хз как оно будет на винде устанавливаться, мне лень искать и очищать от пыли свой личный комп.
Прочти меня — быстрый старт
Проект собирает посты одного тега с joyreactor.cc за указанный период и считает статистику по авторам: количество постов, а также MIN / MAX / SUM (и среднее) их рейтинга.
Тег по умолчанию — Бенефис кринжа. Нужен Python 3.10 или новее.
Шаг 1. Установить Python
macOS
brew install python@3.12
Ubuntu / Debian
sudo apt update && sudo apt install -y python3 python3-venv python3-pip
Windows
winget install Python.Python.3.12
Или скачать установщик с python.org и обязательно поставить галочку «Add python.exe to PATH».
Шаг 2. Зайти в папку проекта
Открыть терминал (на Windows — PowerShell) и перейти в распакованную папку:
cd путь/к/cringe-stats
Шаг 3. Создать виртуальное окружение и установить проект
macOS / Ubuntu
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Windows (PowerShell)
py -m venv .venv
..venvScriptsActivate.ps1
pip install -e .
Если PowerShell отказывается запускать активацию, один раз разрешить это для своего пользователя:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Шаг 4. Проверить, что всё работает
joy-stats --version
Если команда не найдена — использовать равнозначный вариант: python -m joyreactor_stats (на Windows: py -m joyreactor_stats).
Шаг 5. Запустить
Указать период — это единственное, что обязательно:
# Всё за август 2025 года
joy-stats --start 2025-08-01 --end 2025-09-01
# Последние 30 дней, с сохранением файлов в папку reports
joy-stats --last-days 30 --out-dir reports
В папке reports появятся три файла: posts.csv (посты), authors.csv (статистика по авторам) и report.json (всё вместе).
Основные параметры
--start ДАТА | С какой даты брать посты: 2025-08-01 или "2025-08-01 12:30" . |
--end ДАТА | По какую дату включительно. По умолчанию — сейчас. |
--last-days N | Вместо --start : последние N дней. |
--tag "ИМЯ" | Другой тег. По умолчанию Бенефис кринжа . |
--url "АДРЕС" | Ссылка на тег прямо из адресной строки браузера. |
--out-dir ПАПКА | Куда сохранить posts.csv , authors.csv , report.json . |
--sort-authors-by КЛЮЧ | Сортировка авторов: score_sum (по умолчанию), score_max , score_min , score_avg , posts , comments_sum , author . |
--show-posts N | Сколько постов вывести в консоль (по умолчанию 15, 0 — не выводить). |
--delay СЕК | Пауза между запросами к сайту (по умолчанию 0.5). |
Полный список: joy-stats --help.
Другой тег
Проще всего скопировать ссылку из браузера — имя тега подставится само:
joy-stats --url "https://joyreactor.cc/tag/anon/all" --start 2025-01-01 --end 2025-02-01
Или задать имя тега напрямую:
joy-stats --tag "Бенефис кринжа" --start 2024-08-23 --end 2024-09-01
Что означают колонки
Score / Min / Max / Sum / Avg — рейтинг постов. Сайт считает его дробным, и он может быть отрицательным: -14.92 значит, что пост заминусовали.
Comments — количество комментариев.
Title — первая строка текста поста. У постов из одной картинки текста нет, для них выводится (no text — image or video post).
Время везде московское (UTC+03:00) — как на сайте.
Если что-то не так
joy-stats: command not found — окружение не активировано. Повторить source .venv/bin/activate (Windows: ..venvScriptsActivate.ps1) или запускать через python -m joyreactor_stats.
Кракозябры вместо русских букв в консоли Windows — выполнить chcp 65001 или использовать Windows Terminal.
Excel портит русские имена в CSV — не должен: файлы сохраняются с BOM. Если всё равно портит, импортировать как UTF-8.
Could not read the tag — проверить имя тега и доступность сайта; при нестабильной сети помогает увеличить паузу: --delay 2.
Для разработки
pip install -e ".[dev]"
pytest # тесты, интернет не нужен
ruff check .
Подробное описание устройства проекта — в README.md.
Лицензия
WTFPL — версия 2. Делай с этим кодом что хочешь.
Я особо код не проверял, просто быстро пролистнул - вроде бы он не пытается скопировать домашнее видео кому-то в облако, но это не точно. Если вдруг чего надо поменять, обращайтесь или делайте мерж-реквесты (я хз как оно в гитхабе работает) - постараюсь починить.
Всем бобра и счастливого Кринжества!
Комментировать
Подробнее https://reactor...