Melon – это модульный парсер манги и ранобэ, способный получать всю информацию о тайтлах в JSON, запрашивать обновления и собирать контент в удобный для ознакомления формат.
Проект приветствует добавление парсеров сторонними разработчиками. Для этого создана и постоянно актуализируется подробная документация:
- Скачать и распаковать последний релиз.
- Убедиться в доступности на вашем устройстве Python версии 3.10 или новее.
- Открыть каталог со скриптом в терминале: можно воспользоваться командой
cd
или встроенными возможностями файлового менеджера. - Создать виртуальное окружение Python.
python -m venv .venv
- Активировать вирутальное окружение.
# Для Windows.
.venv\Scripts\activate.bat
# Для Linux или MacOS.
source .venv/bin/activate
- Установить зависимости.
pip install -r requirements.txt
- Произвести настройку путём редактирования файла Settings.json.
- В вирутальном окружении указать для выполнения интерпретатором файл
main.py
, передать ему необходимые параметры и запустить.
Вся документация по CLI поставляется в самообновляемом формате. Для получения доступа к ней используются следующие команды:
# Список доступных команд.
main.py help
# Подробная информация о конкретной команде.
main.py help command
Для каждого парсера в его же каталоге поставляется файл settings.json. Он обязан содержать следующие разделы: common, proxy, custom. Таким образом достигается максимальная гибкость конфигурации.
Данный раздел содержит обязательные базовые параметры парсера.
"archives_directory": ""
Указывает, куда сохранять построенный контент. При пустом значении будет создана директория Output/[PARSER_NAME]/archives
в каталоге запуска Melon. Рекомендуется оформлять в соответствии с принципами путей в Linux.
"covers_directory": ""
Указывает, куда сохранять обложки тайтлов. При пустом значении будет создана директория Output/[PARSER_NAME]/covers
в каталоге запуска Melon (для каждого тайтла создаётся дополнительный вложенный каталог с названием в виде используемого имени описательного файла). Рекомендуется оформлять в соответствии с принципами путей в Linux.
"titles_directory": ""
Указывает, куда сохранять описательные файлы. При пустом значении будет создана директория Output/[PARSER_NAME]/titles
в каталоге запуска Melon. Рекомендуется оформлять в соответствии с принципами путей в Linux.
"bad_image_stub": ""
Указывает путь к изображению, которое будет заменять содержимое загружаемого слайда, по определённым критериям не являющегося валидным (битый файл, очень малый размер, неверный формат).
"pretty": false
Включает обработку контента для улучшения качества. Например, удаляет точки в конце названий глав манги или пустые абзацы из ранобэ.
"use_id_as_filename": false
Указывает способ именования описательных файлов и зависимых каталогов. При активации будет использоваться целочисленный идентификатор, по умолчанию – алиас.
"sizing_images": false
Указывает, следует ли пытаться найти данные о разрешении изображений и заносить их в описательный файл.
"legacy": false
Включает режим совместимости с устаревшими форматами DMP-V1 и DNP-V1.
"retries": 1
Указывает количество повторов запроса при неудачном выполнении.
"delay": 1
Задаёт интервал в секундах, выжидаемый между последовательными запросами к серверу.
Здесь указываются опциональные фильтры контента. Поддерживается два типа данных: текст и изображение (это отображается в названиях ключей). Сама секция является опциональной и может быть удалена из настроек.
"text_regexs": []
Список регулярных выражений для поиска удаляемых строк.
"text_strings": []
Список удаляемых строк.
"image_md5": []
Список MD5-хэшей игнорируемых изображений.
"image_min_height": null
Минимальная высота валидного изображения.
"image_min_width": null
Минимальная ширина валидного изображения.
"image_max_height": null
Максимальная высота валидного изображения.
"image_max_width": null
Максимальная ширина валидного изображения.
Данный раздел описывает данные прокси-сервера, использующегося для установки соединения с ресурсом.
"enable": false
Переключает использование прокси-сервера.
"host": ""
Указывает IP-адрес прокси-сервера.
"port": ""
Указывает порт прокси-сервера.
"login": ""
Указывает логин для авторизации на прокси-сервере. Необязательный параметр для публичных серверов.
"password": ""
Указывает пароль для авторизации на прокси-сервере. Необязательный параметр для публичных серверов.
Данный раздел содержит параметры отдельных парсеров, не поддающиеся унификации. Такие опции должны быть описаны в README.md файле, находящемся в домашнем каталоге парсера.
Copyright © DUB1401. 2024.