Files
AnabasisChatRemove/README.md
2025-06-27 23:49:33 +00:00

7.3 KiB
Raw Blame History

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.