Metadata-Version: 2.1
Name: anicli-ru
Version: 5.0.8
Summary: cli tool for watching anime
Project-URL: Documentation, https://github.com/vypivshiy/ani-cli-ru#readme
Project-URL: Issues, https://github.com/vypivshiy/ani-cli-ru/issues
Project-URL: Source, https://github.com/vypivshiy/ani-cli-ru
Author: vypivshiy
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.8
Requires-Dist: anicli-api
Requires-Dist: eggella
Requires-Dist: setuptools
Description-Content-Type: text/markdown

# anicli-ru

___
Скрипт для поиска и просмотра аниме из терминала с русской озвучкой или субтитрами для linux систем, 
написанный на python.

https://github.com/vypivshiy/ani-cli-ru/assets/59173419/bf7e78bd-cdd1-4871-a5b3-f48e6ed7ec28


## Установка

**Рекомендуется использовать pipx**

**Если вам нужен только программный интерфейс парсеров или информация про используемые источники - 
[anicli-api](https://github.com/vypivshiy/anicli-api)**

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

```shell
pipx install anicli-ru 
```

Обновление:

```shell
pipx upgrade anicli-ru
```

### pip

```shell
pip install anicli-ru
```

## Usage:
```shell
anicli-ru
```


## players support
```shell
Поддерживаемые плееры
- mpv (рекомендуется)
- vlc (мало тестов, не со всеми источниками работает)
```

## optional

Если вы будете использовать плеер без поддержки настройки http заголовков - рекомендуется 
дополнительно установить `ffmpeg` для перенаправления видео потока.


Ключи запуска

```shell
-s --source - выбор источника. По умолчанию "animego"
-q --quality - минимально выбранное разрешение видео. Доступны: 0, 144, 240, 360, 480, 720, 1080. По умолчанию 1080
  Например, если вы установили 1080 и такое видео отсутстует - выведет максимально допустимое 
--ffmpeg - использовать ffmpeg для перенаправления видеопотока в видеоплеер
-p --player - какой видеоплеер использовать. доступны "vlc", "mpv". По умолчанию "mpv"
--m3u - для SLICE-режима просмотра создавать плейлист (ЭКСПЕРИМЕНТАЛЬНЫЙ РЕЖИМ, СОБИРАЕТ ВИДЕО МЕДЛЕННО)
--m3u-size - максимальный размер m3u плейлиста. По умолчанию 12
```

---
Отличия от старой версии:

- Клиент основан на prompt-toolkit, реализована надстройка [eggella](https://github.com/vypivshiy/eggella)
- [Api интерфейс парсера](https://github.com/vypivshiy/anicli-api/tree/dev) и Cli клиента 
разделены в отдельные репозитории. Также, API интерфейс поддерживает asyncio!
- http клиент заменен с `requests` на `httpx` со следующими модификациями:
    - **http2** протокол по умолчанию
    - минимальные надстройки headers для работы
    - retry-connect подключения
    - обнаружение ddos защиты источника
    - парсеры работают в связке  `parsel`, `chompjs`, `jmespath` и `regex` библиотек


## Roadmap
- [x] минимальная реализация
- [x] выбор источника
- [x] ffmpeg адаптер
- [x] конфигурация http клиента (прокси, таймаут)
- [ ] кеширование
- [ ] синхронизация с shikimori
- [ ] поиск и переключение по нескольким источникам в одной сессии (без перезапуска)
- [ ] конфигурация приложения
- [ ] система плагинов, кастомизация (?)
- [ ] простой http сервер-прослойка для передачи видео в плееры
