Skip to content

RU Documentation

VOLT_DIAMOND edited this page Dec 14, 2023 · 7 revisions

Документация на Русском Языке для Algo Async Api

Внимание: Описание Атрибутов, Получаемых через HTTP-Запросы Создаются Авторами Библиотеки и могут не являться Истинными!

Если вы - Куратор, Учитель, Программист или кто-то ещё, кто работал над REST API Algoritmika и увидели несостыковку или неправильное обозначение, или хотите просто дополнить Документацию Создайте здесь тогда ваше сообщение: Create Message

Название Некоторых Атрибутов может быть Помечено, как: NF - Это означает что название не точное или не существует.


Быстрый Старт.

import asyncio
from algo_async_api.algo_api import AsyncSession as api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await api.create(login, password)
    check = await session.my_profile()
    print(check.first_name)
    print(check.last_name)
    await session.close()

if __name__ == "__main__":
    asyncio.run(main())

Разбор Быстрого Старта

import

import asyncio
import algo_async_api as api

В Данном отрывке мы Импортируем 2 Библиотеки

Библиотека Asyncio для запуска Функции async def main()

А также мы импортируем AsyncSession из algo_async_api.algo_api как api для более удобного взаимодействия.

После того как мы сделали from algo_async_api.algo_api import AsyncSession as api Теперь Мы можем использовать вместо данного метода algo_async_api.AsyncSession.func более краткий и удобный в понимании api.func

Переменные

login = "Ваш Логин"
password = "Ваш Пароль"

В Данном Отрывке кода Мы устанавливаем значение Вашего Логина и Пароля для Авторизации на algoritmika.org

session = await api.create(login, password)
check = await session.my_profile()

Здесь мы Создаём Сессию session которую Далее мы будем использовать для Взаимодействия с Алгоритмикой.

После того, как мы создали объект session мы создаём объект check, который получит Информацию о Профиле Аккаунта через который мы вошли при помощи функции my_profile.

Заметьте Мы используем не просто функцию my_profile, а используем await session.my_profile!

print

print(check.first_name)
print(check.last_name)

Здесь мы Получаем из check нужные нам Имя и Фамилию.

Подробнее что мы можем получить из my_profile здесь

end

await session.close()

Здесь мы закрываем Сессию и Код заканчивается.


Полный метод: algo_async_api.algo_api.AsyncSession | Краткий метод: api

Входные Аргументы:

Имя Тип Описание
login str Ваш логин на Платформе Algoritmika.
password str Ваш пароль на Платформе Algoritmika.

Атрибуты:

Имя Тип Описание
login_name str Последний Логин на Платформе Algoritmika.
password str Последний Пароль на Платформе Algoritmika.
id int / None ID пользователя на платформе.
None, если вы не вошли в систему.
session aiohttp.ClientSession() / None Сессия пользователя на платформе.
None, если вы не вошли в систему.

При изменении логина или пароля напрямую вы останетесь на том же аккаунте, на который входили. То, есть если измените Логин или Пароль во время выполнения кода.

Доступные Методы | Функции:

create(login: str, password: str)

Выполняет Авторизацию на Платформе Algoritmika.

Если вы уже вошли в аккаунт, поднимет ошибку AsyncAlreadyLoggedIn.

Вызвать Функцию можно несколькими способами:

# Простой Способ
import asyncio
from algo_async_api.algo_api import AsyncSession as api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await api.create(login, password)

if __name__ == "__main__":
    asyncio.run(main())
# Сложный Способ
import asyncio
import algo_async_api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await algo_async_api.algo_api.AsyncSession.create(login, password)

if __name__ == "__main__":
    asyncio.run(main())

close()

Выходит из аккаунта и завершает сессию.

Для повторного входа в систему необходимо вызвать create().

Вызвать Функцию можно несколькими способами:

# Простой Способ
import asyncio
from algo_async_api.algo_api import AsyncSession as api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await api.create(login, password)
    await session.close()

if __name__ == "__main__":
    asyncio.run(main())
# Сложный Способ
import asyncio
import algo_async_api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await algo_async_api.algo_api.AsyncSession.create(login, password)
    await session.close()

if __name__ == "__main__":
    asyncio.run(main())

my_profile()

Возвращает полную информацию профиля с Аккаунта под которым вы вошли пользователя как объект класса SelfProfile.

Если вы не вошли в аккаунт, поднимет ошибку AsyncSessionClosed.

Вызвать Функцию можно несколькими способами:

# Простой Способ
import asyncio
from algo_async_api.algo_api import AsyncSession as api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await api.create(login, password)
    my_algo_profile = await session.my_profile()
    print(check.first_name)
    print(check.last_name)
    await session.close()

if __name__ == "__main__":
    asyncio.run(main())
# Сложный Способ
import asyncio
import algo_async_api

login = "Ваш Логин"
password = "Ваш Пароль"

async def main():
    session = await algo_async_api.algo_api.AsyncSession.create(login, password)
    my_algo_profile = await session.my_profile()
    print(check.first_name)
    print(check.last_name)
    await session.close()

if __name__ == "__main__":
    asyncio.run(main())