Skip to main content

anime-ru grabber video api

Project description

anicli-ru


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

Парсит аниме с сайта animego.org

test result


Dependencies:

  • mpv или видеоплеер, поддерживающий hls и cli команды (проверялся скрипт на mpv, стабильность с другими плеерами не гарантирована)
  • python 3.6+
  • requests

Install:

CLI tool:

git clone https://github.com/vypivshiy/ani-cli-ru.git
cd ani-cli-ru
sudo make

Если нужен только доступ к API интерфейсу без установки CLI скрипта:

git clone https://github.com/vypivshiy/ani-cli-ru.git
cd ani-cli-ru
python3 setup.py install

Или:

pip install anicli_ru

Usage:

anicli-ru


Supported video hostings:

  • sibnet
  • aniboom
  • kodik
  • anivod (kodik mirror)

CLI Commands:

q [q]uit - выход из программы
b [b]ack to the previous step - возвратиться на предыдущий шаг
h [h]elp - вывод списка доступных команд
c [c]lear - очистить консоль
o [o]ngoing print - напечатать недавно вышедшие онгоинги
r [r]andom title - выбрать случайное аниме и напечатать доступные эпизоды (через эндпоинт сайта)

Optional arguments:

-p --proxy - опциональный аргумент на установку прокси. Если просмотр аниме (или некоторых тайтлов) запрещен в вашей стране, то это поможет обойти ограничения (Только на получение ссылки на видео, сама загрузка видео будет идти без прокси, так как там ограничений нет)

Пример ввода прокси:

anicli-ru --proxy https://192.168.0.1:8080  # HTTPS

anicli-ru --proxy socks4://192.168.0.1:8888  # SOCKS4

anicli-ru --proxy socks5://192.168.0.1:8888  # SOCKS5

-v --videoplayer - опциональный аргумент выбора локального видеоплеера. По умолчанию mpv.

-hc --headers-command - опциональный аргумент команды установки заголовка headers в выбранном плеере. По умолчанию --http-header-fields (как в mpv)


Api usage example:

from anicli_ru import Anime
from anicli_ru.utils import run_player


anime = Anime()
ongoings = anime.ongoing() # get ongoings
# get first ongoing title, first episode and first videoplayer
url_ong = ongoings[0].episodes()[0].player()[0].get_video()

rezults = anime.search("lain")
rezults.print_enumerate()
# get first find result:
a = rezults.choose(1)  # index start in 1 or usage list index: rezults[0]
episodes = a.episodes()
ep = episodes.choose(1)  # choose episode 1
players = ep.player()  # get players. lain return 1 with X-Media dub
p = players.choose(1)
url = p.get_video()  # get direct video url
# if need send video to local player, import run_player (player arg default mpv)
run_player(url)

ROADMAP:

  • добавить поддержку proxy;
  • вывод вышедших на сегодняшнюю дату онгоингов;
  • рефакторинг логики работы меню;
  • выбор качества видео;
  • добавление фич;
  • добавить дополнительные команды управления через argparser;

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

anicli_ru-2.1.1-py3.9.egg (17.6 kB view details)

Uploaded Egg

File details

Details for the file anicli_ru-2.1.1-py3.9.egg.

File metadata

  • Download URL: anicli_ru-2.1.1-py3.9.egg
  • Upload date:
  • Size: 17.6 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for anicli_ru-2.1.1-py3.9.egg
Algorithm Hash digest
SHA256 fd564b3120132fd9401c12168c352f4c79176d8cfa60b589a68caee4d2c7f65e
MD5 2c3be4c58eb632da55f0f214928f2675
BLAKE2b-256 1e51ecafba17f9ee983e4103bc6b7221e03d5f8bc444d06adcc6bea3637ace71

See more details on using hashes here.

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