Alex 6aa50b03da feat(build): Добавлена кросс-платформенная поддержка в setup.py
Модифицирован скрипт сборки на основе cx_Freeze для обеспечения совместимости с основными операционными системами (Windows, macOS, Linux). Ранее скрипт был настроен преимущественно для Windows.

Ключевые изменения:
- **Динамическое имя файла:** Исполняемый файл получает расширение `.exe` только при сборке на Windows.
- **Разделение сборок:** Для каждой целевой ОС создается своя папка (например, `build_linux`), что позволяет хранить сборки для разных систем одновременно.
- **Платформо-зависимые опции:** Учтены особенности сборки для каждой ОС, включая `base="Win32GUI"` для Windows и `base=None` для Linux.
2025-07-24 23:43:27 +03:00
2025-06-28 02:48:28 +03:00
2025-06-27 23:49:33 +00:00
2025-06-23 00:35:12 +03:00

Anabasis VK Chat Manager

Описание проекта

Anabasis VK Chat Manager — это десктопное приложение на Python с графическим интерфейсом, разработанное для упрощения управления пользователями в чатах ВКонтакте. Оно позволяет авторизоваться через VK OAuth, просматривать список своих чатов, а также исключать или приглашать пользователей в выбранные чаты.

Приложение спроектировано для минимизации ручных операций и повышения удобства управления групповыми беседами VK.

Возможности

  • Авторизация через VK OAuth: Безопасный процесс входа через официальный VK API.
  • Сохранение сессии: Поддержка сохранения куки-файлов браузера для длительной авторизации в QWebEngineView.
  • Управление токенами: Автоматическое сохранение и загрузка VK Access Token для удобства использования.
  • Список чатов: Загрузка и отображение списка доступных чатов пользователя.
  • Выбор чатов: Возможность выбора одного или нескольких чатов для выполнения операций.
  • Автоматическое определение ID пользователя: Получение ID пользователя VK из различных форматов ссылок (например, vk.com/id123, vk.com/durov).
  • Исключение пользователей: Удаление пользователя из выбранных чатов.
  • Приглашение пользователей: Добавление пользователя в выбранные чаты.
  • Визуальный таймер токена: Отображение оставшегося времени действия Access Token.
  • Информативные сообщения: Детальные статусы операций и сообщения об ошибках.
  • Обработка ошибок: Улучшенная обработка ошибок VK API, включая смену IP-адреса.

Установка

Готовый билд

Скачайте последнюю доступную версию из релизов и распакуйте архив

Ручная установка

Для запуска приложения вам потребуется Python 3 и библиотеки PySide6 и vk_api.

  1. Клонируйте репозиторий

  2. Создайте и активируйте виртуальное окружение (рекомендуется):

    python -m venv venv
    # Для Windows:
    .\venv\Scripts\activate
    # Для macOS/Linux:
    source venv/bin/activate
    
  3. Установите зависимости:

    pip install PySide6 vk_api
    

Использование

  1. Запустите приложение:

    • Готовый билд:
    • Запустите AnabasisHRChatManager.exe
    • Ручная установка:
    • python main.py
      
  2. Авторизация:

    • Нажмите кнопку "Авторизоваться через VK".
    • В открывшемся окне браузера войдите в свой аккаунт ВКонтакте.
    • Разрешите доступ приложению, если потребуется.
    • После успешной авторизации окно закроется, и токен доступа будет сохранен.
  3. Выбор чатов:

    • После авторизации приложение автоматически загрузит список ваших чатов.
    • Отметьте галочками те чаты, с которыми хотите работать. Используйте кнопки "Выбрать все" / "Снять выбор со всех" для удобства.
    • Кнопка "Обновить чаты" позволяет перезагрузить список чатов.
  4. Управление пользователями:

    • В поле "Введите или вставьте ссылку на страницу VK" вставьте ссылку на страницу пользователя ВКонтакте (например, vk.com/id123 или vk.com/durov). Приложение автоматически определит ID пользователя.
    • Нажмите кнопку "ИСКЛЮЧИТЬ ПОЛЬЗОВАТЕЛЯ" для удаления пользователя из выбранных чатов.
    • Нажмите кнопку "ПРИГЛАСИТЬ ПОЛЬЗОВАТЕЛЯ" для добавления пользователя в выбранные чаты.
    • Опция "Показать 250 последних сообщений при добавлении" позволяет управлять видимостью истории сообщений для нового участника (Примечание: VK API может игнорировать этот параметр для messages.addChatUser).

Структура данных и конфигурация

Приложение хранит данные в директории, специфичной для данных приложения, что соответствует рекомендациям операционных систем.

  • token.json: Файл для сохранения VK Access Token. Находится в [AppDataLocation]/AnabasisVKChatManager/token.json.
  • web_engine_cache/: Директория для хранения куки-файлов и кэша QWebEngineProfile, обеспечивающая сохранение сессии внутри встроенного браузера. Находится в [AppDataLocation]/AnabasisVKChatManager/web_engine_cache/.

[AppDataLocation] соответствует:

  • Windows: %APPDATA% (например, C:\Users\YourUser\AppData\Roaming)
  • macOS: ~/Library/Application Support
  • Linux: ~/.local/share

Известные проблемы / Ограничения

  • Параметр visible_messages_count для messages.addChatUser может быть проигнорирован VK API согласно официальной документации. Приложение уведомит вас об этом при попытке использования.
  • При смене IP-адреса, токен авторизации VK может стать недействительным, потребуется повторная авторизация. Приложение автоматически предложит её.

Лицензия

Этот проект распространяется под лицензией MIT.

Description
No description provided
Readme MIT 78 KiB
Languages
Python 100%