Основной клиент#

class AniLibriaClient(*, proxy=None, logging=None)#

Основной клиент для взаимодействия с API anilibria.tv.

on_startup(coro=<anilibria.MISSING>)#

Декоратор для прослушивания события on_startup. Вызывается только один раз при запуске клиента.

@client.on_startup()  # Можно без скобок
async def start():  # Единственное событие, при котором функция ничего не должна принимать.
    ...
Параметры:

coro (Callable[..., Coroutine]) – Функция, которая будет вызываться.

on(event)#

Декоратор для прослушивания событий. Принимает класс события.

@client.on(PlaylistUpdate)
async def name_you_want(event: PlaylistUpdate):
    ...
Параметры:

event (Type[BaseEvent]) – Класс ивента

listen(coro=<anilibria.MISSING>, *, name=<anilibria.MISSING>)#

Декоратор для прослушивания событий. Принимает названия события.

Примеры использования:

@client.listen
async def on_playlist_update(event: PlaylistUpdate):
    ...

@client.listen()
async def on_playlist_update(event: PlaylistUpdate):
    ...

@client.listen(name="on_playlist_update")
async def name_you_want(event: PlaylistUpdate):
    ...
Параметры:
  • coro (Callable[..., Coroutine]) – Функция, которая будет вызываться.

  • name (str) – Название ивента. Например: on_title_update.

event(coro=<anilibria.MISSING>, *, name=<anilibria.MISSING>)#

Декоратор для прослушивания событий. Принимает названия события. Алиас для listen():

Примеры использования:

@client.listen
async def on_playlist_update(event: PlaylistUpdate):
    ...

@client.listen()
async def on_playlist_update(event: PlaylistUpdate):
    ...

@client.listen(name="on_playlist_update")
async def name_you_want(event: PlaylistUpdate):
    ...
Параметры:
  • coro (Callable[..., Coroutine]) – Функция, которая будет вызываться.

  • name (str) – Название ивента. Например: on_title_update.

async subscribe(subscribe, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>)#

По умолчанию клиент получает все возможные уведомления от API. Но можно подписаться на определённые ивенты, или ивенты с каким-то фильтром

await client.subscribe(
    {
        "title_update": {
            "title": {
                "season": {
                    "year": 2022
                }
            }
        }
    }
)
Параметры:
  • subscribe (dict) – Данные о подписке. Здесь может быть всё то, что принимает веб сокет.

  • filter (str) – То, что должно быть включено в подписку.

  • remove (str) – То, что нужно удалить из подписки.

async login(mail, password)#

Входит в аккаунт.

Предупреждение

Если запрос идёт из РФ, то для использования необходим VPN или proxy!

Параметры:
  • mail (str) – Логин или эл.почта

  • password (str) – Пароль

Результат:

ID сессии

Тип результата:

str

async get_title(id=<anilibria.MISSING>, code=<anilibria.MISSING>, torrent_id=<anilibria.MISSING>, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>)#

Возвращает тайтл с заданными параметрами.

Параметры:
  • id (Absent[int]) – ID тайтла.

  • code (Absent[str]) – Код тайтла.

  • torrent_id (Absent[int]) – ID торрента

  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

Тип результата:

Title

async get_titles(id_list=<anilibria.MISSING>, code_list=<anilibria.MISSING>, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список тайтлов с заданными параметрами.

Параметры:
  • id_list (Absent[list[int]]) – Список с ID тайтлами

  • code_list (Absent[list[str]]) – Список с кодами тайтлов.

  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

async get_updates(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, since=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список последних обновлений тайтлов с заданными параметрами.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • since (Absent[int]) – Список тайтлов, у которых время обновления больше указанного timestamp

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

  • after (Absent[int]) – Удаляет первые n записей из выдачи

  • limit (Absent[int]) – Количество объектов в ответе. По умолчанию 5

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

async get_changes(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, since=<anilibria.MISSING>, description_type=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список последних обновлений тайтлов с заданными параметрами.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • since (Absent[int]) – Список тайтлов, у которых время обновления больше указанного timestamp

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • after (Absent[int]) – Удаляет первые n записей из выдачи

  • limit (Absent[int]) – Количество объектов в ответе. По умолчанию 5

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

async get_schedule(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, days=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>)#

Возвращает список последних обновлений тайтлов с заданными параметрами по дням.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • days (Absent[list[int]]) – Список дней недели, на которые нужно расписание

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

Тип результата:

list[Schedule]

async get_random_title(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>)#

Возвращает рандомный тайтл с заданными параметрами.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

Тип результата:

Title

async get_youtube(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, since=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список youtube видео в хронологическом порядке с заданными параметрами.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • since (Absent[int]) – Список тайтлов, у которых время обновления больше указанного timestamp

  • after (Absent[int]) – Удаляет первые n записей из выдачи

  • limit (Absent[int]) – Количество объектов в ответе. По умолчанию 5

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[YouTubeVideo]

async get_feed(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, since=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список тайтлов и youtube видео в хронологическом порядке с заданными параметрами.

Параметры:
  • filter (Absent[list[str]]) – То, что должно быть в ответе.

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • since (Absent[int]) – Список тайтлов, у которых время обновления больше указанного timestamp

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

  • after (Absent[int]) – Удаляет первые n записей из выдачи

  • limit (Absent[int]) – Количество объектов в ответе. По умолчанию 5

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title | YouTubeVideo]

async get_years()#

Возвращает список годов выхода доступных тайтлов отсортированный по возрастанию.

Тип результата:

list[int]

async get_genres(sorting_type=0)#

Возвращает список жанров доступных тайтлов отсортированный по алфавиту.

Параметры:

sorting_type (int) – Тип сортировки элементов.

Тип результата:

list[str]

async get_team()#

Возвращает участников команды когда-либо существовавших на проекте.

Тип результата:

TitleTeam

async get_seed_stats(users=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, after=<anilibria.MISSING>, sort_by=<anilibria.MISSING>, order=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает топ пользователей по количеству загруженного и скачанно через торрент трекер anilibria.

Параметры:
  • users (Absent[list[str]]) – Статистика по имени пользователя

  • remove (Absent[list[str]]) – То, чего не должно быть в ответе.

  • include (Absent[list[Include]]) – Список типов файлов которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list)

  • after (Absent[int]) – Удаляет первые n записей из выдачи.

  • sort_by (Absent[str]) – По какому полю производить сортировку, допустимые значения: downloaded, uploaded, user

  • order (Absent[int]) – Направление сортировки 0 - DESC, 1 - ASC.

  • limit (Absent[int]) – Количество объектов в ответе. По умолчанию 5

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[SeedStats]

async get_rss(rss_type=<anilibria.MISSING>, session_id=<anilibria.MISSING>, since=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>)#

Возвращает список обновлений на сайте в одном из форматов RSS ленты.

Параметры:
  • rss_type (Absent[RSSType]) – Предпочитаемый формат вывода

  • session_id (Absent[str]) – Уникальный идентификатор сессии пользователя

  • since (Absent[int]) – Список тайтлов у которых время обновления больше указанного timestamp

  • after (Absent[int]) – Удаляет первые n записей из выдачи

  • limit (Absent[int]) – Количество объектов в ответе

Тип результата:

str

async search_titles(search=<anilibria.MISSING>, year=<anilibria.MISSING>, season_code=<anilibria.MISSING>, genres=<anilibria.MISSING>, team=<anilibria.MISSING>, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список тайтлов, найденных по фильтрам.

Параметры:
  • search (Absent[list[str]]) – Поиск по именам и описанию.

  • year (Absent[list[str | int]]) – Список годов выхода.

  • season_code (Absent[list[str]]) – Список сезонов.

  • genres (Absent[list[str]]) – Список жанров.

  • team (Absent[list[str]]) – Ники участников, работавшие над тайтлом.

  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

  • include (Absent[list[Include]]) – Список типов файлов, которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list).

  • after (Absent[int]) – Удаляет первые n записей из выдачи.

  • limit (Absent[int]) – Количество объектов в ответе.

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

Возвращает список тайтлов, найденных по фильтрам.

Параметры:
  • query (str) – Запрос для поиска. Может быть название тайтла.

  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

  • include (Absent[list[Include]]) – Список типов файлов, которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий.

  • after (Absent[int]) – Удаляет первые n записей из выдачи.

  • order_by (Absent[str]) – Ключ по которому будет происходить сортировка результатов

  • limit (Absent[int]) – Количество объектов в ответе.

  • sort_direction (int | _Missing) – Направление сортировки. 0 - По возрастанию, 1 - По убыванию

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

async get_user(session_id, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>)#

Возвращает объект пользователя по текущей сессии.

Параметры:
  • session_id (int) – Айди сессии.

  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

Тип результата:

User

async get_user_favorites_titles(session_id, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, include=<anilibria.MISSING>, description_type=<anilibria.MISSING>, playlist_type=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список избранных тайтлов пользователя

Параметры:
  • session_id (str) – ID сессии.

  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

  • include (Absent[list[Include]]) – Список типов файлов, которые будут возвращены в виде base64 строки

  • description_type (Absent[DescriptionType]) – Тип получаемого описания.

  • playlist_type (Absent[PlaylistType]) – Формат получаемого списка серий. Словарь(object) или список(list).

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[Title]

async add_user_favorite_title(session_id, title_id)#

Добавляет тайтл в список избранных

Параметры:
  • session_id (str) – ID сессии.

  • title_id (int) – ID тайтла.

async remove_user_favorite_title(session_id, title_id)#

Удаляет тайтл из списка избранных

Параметры:
  • session_id (str) – ID сессии.

  • title_id (int) – ID тайтла.

async get_title_franchises(id, filter=<anilibria.MISSING>, remove=<anilibria.MISSING>)#

Получение франшизы тайтла

Параметры:
  • id (int) – ID тайтла

  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

Тип результата:

TitleFranchise | None

async get_franchises(filter=<anilibria.MISSING>, remove=<anilibria.MISSING>, after=<anilibria.MISSING>, limit=<anilibria.MISSING>, page=<anilibria.MISSING>, items_per_page=<anilibria.MISSING>)#

Возвращает список всех франшиз

Параметры:
  • filter (Absent[list[str]]) – Список значений, которые будут в ответе.

  • remove (Absent[list[str]]) – Список значений, которые будут удалены из ответа.

  • after (Absent[int]) – Удаляет первые n записей из выдачи.

  • limit (Absent[int]) – Количество объектов в ответе.

  • page (Absent[int]) – Номер страницы. По умолчанию 1

  • items_per_page (Absent[int]) – Количество элементов на одной странице.

Тип результата:

ListPagination[TitleFranchise]

async astart(*, auto_reconnect=True)#

Запускает клиент асинхронно

start(*, auto_reconnect=True)#

Запускает клиент.

startwith(coro, *, auto_reconnect=True)#

Запускает основной клиент вместе с корутиной.

Параметры:
  • coro (Coroutine) – Корутина для запуска

  • auto_reconnect (bool) – Нужно ли перезапускать клиент после ошибки сервера анилибрии?

async close()#

Закрывает клиент.