Skip to main content

Python библиотека для автоматизации работы с API сайта kaalition.ru

Project description

Kaalition API Library — это Python библиотека с объектно-ориентированным интерфейсом для работы с API сайта kaalition.ru. Библиотека упрощает взаимодействие с API, беря на себя обработку HTTP-запросов, аутентификацию и управление ошибками.

Установка

Требования

  • Python 3.8+
  • requests
  • faker

pip (рекомендуется)

pip install kaalition-lib

Из исходного кода

git clone https://github.com/Dima-programmer/KAALITION_API_LIB/kaalition-lib.git

Быстрый старт

from kaalition_lib import KaalitionClient

# Создание клиента и регистрация аккаунта
client = KaalitionClient()
account = client.register()

print(f"Аккаунт создан: {account.username}")

# Поиск пользователей
users = account.search_users("никнейм")

if users:
    # Отправка сообщения
    account.send_message(users[0], "Привет!")

API Reference

KaalitionClient

Базовый клиент для операций без авторизации.

from kaalition_lib import KaalitionClient

client = KaalitionClient(
    base_url="https://kaalition.ru",
    accounts_file="accounts.json"
)

Методы:

Метод Описание
register() Регистрация нового аккаунта
login(email, password) Вход в аккаунт
create_from_token(token) Создание аккаунта из токена
load_accounts() Загрузка сохранённых аккаунтов

Account

Аккаунт с авторизацией.

account = client.register()

Методы:

Метод Описание
search_users(query) Поиск пользователей
send_message(user, message) Отправка личного сообщения
create_support_ticket(subject, message) Создание тикета поддержки
send_to_support(message) Отправка в чат поддержки
update_profile(...) Обновление профиля
refresh() Синхронизация с сервером
is_active() Проверка активности
save() Сохранение аккаунта

User

@dataclass
class User:
    id: int
    username: str
    nickname: str
    photo: str
    avatar_emoji: Optional[str]
    is_verified: bool

Примеры

Работа с коллекцией аккаунтов

from kaalition_lib import load_accounts, clean_accounts_file

# Загрузка активных аккаунтов
accounts = load_accounts("accounts.json", active_only=True)

# Проверка активности
for acc in accounts:
    if acc.is_active():
        acc.update_profile(bio="Обновлено")
        acc.save()

# Очистка неактивных
clean_accounts_file("accounts.json")

Массовая рассылка

from kaalition_lib import KaalitionClient
import time

client = KaalitionClient()
account = client.login("email@mail.ru", "password")

users = account.search_users("аудитория")

for user in users:
    if account.is_active():
        account.send_message(user, "Ваше сообщение")
        time.sleep(1)

Исключения

from kaalition_lib import (
    KaalitionError,
    RegistrationError,
    LoginError,
    TokenError,
)

try:
    account = client.register()
except RegistrationError:
    print("Ошибка регистрации")
except LoginError:
    print("Ошибка входа")
except TokenError:
    print("Ошибка токена")

Константы

from kaalition_lib import (
    DEFAULT_BASE_URL,
    DEFAULT_ACCOUNTS_FILE,
    DEFAULT_USER_AGENT,
    DEFAULT_DELAY,
    DEFAULT_EMAIL_DOMAINS,
)

Поддержка проекта

Если библиотека оказалась полезной, вы можете:

  • Поставить звезду на GitHub:
  • Сообщить об ошибке через Issues
  • Предложить улучшения через Pull Requests

Ваша обратная связь помогает делать библиотеку лучше.

Лицензия

MIT License. Подробности в файле LICENSE.

Автор

Dima-Programmer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kaalition_lib-1.0.2.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kaalition_lib-1.0.2-py2.py3-none-any.whl (11.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file kaalition_lib-1.0.2.tar.gz.

File metadata

  • Download URL: kaalition_lib-1.0.2.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kaalition_lib-1.0.2.tar.gz
Algorithm Hash digest
SHA256 205659535f54ed207edb2d4d8b016313ac9666c46873beb96bf629fa258a5309
MD5 59a8e4d0d1ff11c1f1a37ba4bd5d9303
BLAKE2b-256 cde3b69be4d1d5eb2435e02c0f94158818398ea2df312538977fa623cb412ccb

See more details on using hashes here.

Provenance

The following attestation bundles were made for kaalition_lib-1.0.2.tar.gz:

Publisher: publish.yml on Dima-programmer/KAALITION_API_LIB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kaalition_lib-1.0.2-py2.py3-none-any.whl.

File metadata

  • Download URL: kaalition_lib-1.0.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kaalition_lib-1.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 17789cf25074ac056591c20d6c5a6be811f82369749d2c7b60bf44b5fa54b5ff
MD5 b399f1a5697061771bc7952bcdefed0c
BLAKE2b-256 bcb720c5da69f7a15a8cf16112631ba7f0f846f753bcb7286c38078d726a432e

See more details on using hashes here.

Provenance

The following attestation bundles were made for kaalition_lib-1.0.2-py2.py3-none-any.whl:

Publisher: publish.yml on Dima-programmer/KAALITION_API_LIB

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page