Chi Emonoda -- 得物だ

PyPI Version PyPI Status PyPI License Python Versions Build Status


Emonoda (moon. 得物だ, рус. это добыча) -- это набор программ для организации и управления коллекцией торрентов. Он поможет вам следить за актуальностью раздач и автоматически обновлять торрент-файлы, а так же вычищать старые данные, просматривать мета-информацию и делать множество других вещей.


Основные фичи

  • UNIX-way -- система представлена в виде простых консольных программ с текстовыми конфигами. Не нужно разворачивать оракл, апач и кластер эллиптикса - просто поставьте Emonoda и укажите в ее конфиге несколько несложных параметров.
  • Python -- можно легко добавить поддержку других трекеров, используя готовый набор классов и функций.
  • Интегрируемость -- программы стараются по-максимуму использовать все возможности торрент-клиентов. Например, emfile способна найти каталог, куда вы загружали указанный торрент, а emupdate при обновлении торрент-файла может сохранить его метку, назначенную в ruTorrent.
  • Прокси для каждого трекера -- можно индивидуально настроить использование HTTP/Socks4/Socks5-прокси, если в вашей сети недоступен любимый ресурс.
  • Фингерпринты -- перед тем, как логиниться на трекер, программа проверит содержимое сайта и сообщит вам, если вместо него вдруг показывается провайдерская заглушка.
  • Оповещения -- можно добавить emupdate в крон и забыть о нем, а при появлении новых раздач программа сама вышлет вам оповещение на почту или телефон.

Поддерживаемые трекеры

  • http://rutracker.org
  • http://nnm-club.me
  • http://ipv6.nnm-club.name
  • http://rutor.info
  • http://pravtor.ru
  • http://tr.anidub.com
  • http://pornolab.net
  • http://booktracker.org
  • http://trec.to

Поддерживаемые клиенты

Способы оповещения

  • E-mail -- в виде плейнтекста или HTML, на ваш выбор. Посылаются в виде дайджеста по всем обновленным раздачам.
  • Telegram -- по отдельному сообщению на каждую обновленную раздачу для всех необходимых пользователей.
  • Pushover -- push-нотификации на айфон и андроид, по одной на раздачу, без подробностей.
  • Генерация ленты обновлений в формате Atom.

Основные компоненты из коробки

Компонент Описание
emupdate Следит за раздачами, используя плагины для популярных трекеров; обновляет торрент-файлы при добавлении новых серий или перезаливке; интегрируется с основными линуксовыми клиентами
emfile Позволяет читать метаданные торрент-файлов и выдает их в человекочитаемом, либо удобном для скриптов формате
emdiff Показывает разницу содержимого двух торрент-файлов в виде диффа
emload Загружает торрент, используя "ссылочную" модель хранения данных (см. документацию)
emrm Удаляет торрент из клиента
emfind Служит для выполнения различных поисковых запросов, например - найти в каталоге с данными файлы, не принадлежащими ни одному торренту, зарегистрированному в клиенте

Скриншоты

emupdate в консоли Оповещение на почту

Установка

Для работы программы требуется Python версии 3.6 или выше. Для сборки нужен Cython.


Локальная установка из PyPI

Вы можете поставить emonoda в свой домашний каталог из PyPI, при этом программы будут доступны в ~/.local/bin, например - ~/.local/bin/emupdate.

Для установки введите:

$ pip3 install --user --upgrade emonoda

Пакет для Arch Linux

Актуальный PKGBUILD находится в AUR`е:

$ packer -S emonoda

С чего начать?

Emonoda - очень развесистая система, имеющая тонну параметров для тонкой настройки под конкретные цели и юзкейсы. Чтобы начать эффективно пользоваться всеми ее возможностями, рекомендуется изучить базовые принципы настройки, а затем перейти к рассмотрению каждой команды, например emupdate.

В самом простом случае вам потребуется лишь минимальная настройка. Скажем, если у вас большинство торрентов скачано с рутрекера, а в качестве клиента вы используете связку rTorrent с ruTorrent, вам будет достаточно создать файл ~/.config/emonoda.yaml примерно такого содержания:

core:
    client: rtorrent
    torrents_dir: /путь/к/торрент-файлам

trackers:
    rutracker.org:
        user: логин-на-рутрекере
        passwd: пароль